Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (22): В начало « 14 15 16 17 18 19 20 [21] 22 »   

> Без описания
Zireael
Отправлено: 25 Апреля, 2019 - 14:11:01
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4464
Дата рег-ции: Нояб. 2017  
Репутация: 585




Получить все ключи секции в ini, исправил, не все ключи находило.
CODE:
external (INT, "GetPrivateProfileString", "GetPrivateProfileStringA", "kernel32.dll");

int length;
char key_ini[99999], value[999];
string path="C:\123.ini"; // путь к ini
string date="19.04.2019"; // секция

int x=GetPrivateProfileString (date, 0, 0, address (#key_ini[0]), sizearray(key_ini), path); // получить все ключи
if(x)
{
length=0;
for(int i=0; length<=x; i++)
{
if(GetPrivateProfileString (date, format(#key_ini[length]), 0, address (#value[0]), sizearray(value), path)) // получить значение ключа
{
messagebox(format(#key_ini[length])+" "+format(#value[0]));
}
length=length+size(#key_ini[length])+1;
}
}
 
 Top
007wan
Отправлено: 25 Апреля, 2019 - 15:16:31
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017  
Репутация: -2




Zireael , О, спасибо.
 
 Top
007wan
Отправлено: 26 Апреля, 2019 - 13:41:55
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017  
Репутация: -2




Можно, пожалуйста код, где Edit размером 200х100, для которого ограничен ввод символов на 70. Но еще дополнительно имеет скроллер вертикальный и горизонтальный, а то у меня не переводит строчку при Ентер.
CODE:
Object_Edit1 = CreateWindow(0, "EDIT", "", WS_HSCROLL | WS_VSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | ES_AUTOHSCROLL | ES_AUTOVSCROLL, 295, 215, 200, 100, gethwnd(1), 0, 0, 0);

(Добавление)
Проблема вот:
 007wan пишет:
у меня не переводит строчку при Ентер.
 
 Top
Zireael
Отправлено: 26 Апреля, 2019 - 13:54:40
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4464
Дата рег-ции: Нояб. 2017  
Репутация: 585




 Цитата:
код, где Edit размером 200х100, для которого ограничен ввод символов на 70.

CODE:
#define WS_CHILD 1073741824
#define WS_VISIBLE 268435456
#define WS_BORDER 8388608
#define WS_HSCROLL 1048576
#define WS_VSCROLL 2097152
#define ES_AUTOHSCROLL 128
#define ES_AUTOVSCROLL 64
#define ES_MULTILINE 4
#define ES_WANTRETURN 4096
#define EM_SETLIMITTEXT 197
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll" );

int Object_Edit1;
createdialog(0);
showdialog(0, "Диалог",100, 100, 300, 300, 1, 1);

loop()sleep(1);

function getmessage(0, WM_CREATE)
{
Object_Edit1 = CreateWindow(0, "EDIT", "", ES_WANTRETURN | ES_MULTILINE | WS_HSCROLL | WS_VSCROLL | WS_CHILD | WS_VISIBLE | WS_BORDER | ES_AUTOHSCROLL | ES_AUTOVSCROLL, 10, 10, 200, 100, gethwnd(0), 0, 0, 0);
sendmessage(EM_SETLIMITTEXT, 10, 0, formatiw(Object_Edit1)); // ограничение в 10 символов
}
 
 Top
007wan
Отправлено: 26 Апреля, 2019 - 14:34:25
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017  
Репутация: -2




Zireael , Спасибо, но теперь из файла не читает все строчки, а только первую.
Вот что в файле:
Сохранил текст первый раз в файл (Отобразить)

Сохранил второй раз (Отобразить)

(Отредактировано автором: 26 Апреля, 2019 - 14:35:42)

 
 Top
Zireael
Отправлено: 26 Апреля, 2019 - 14:44:10
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4464
Дата рег-ции: Нояб. 2017  
Репутация: 585




В ini нельзя сохранить многострочный текст.
 
 Top
007wan
Отправлено: 26 Апреля, 2019 - 14:46:42
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017  
Репутация: -2




Zireael , Насчет побитовых функций. я думаю можно при значении галочек 8 или 9 через for заменить на 1 или 0, либо убрать фокус со всех галочек, когда нажата любая галочка, а потом уже сохранить в файл.
(Добавление)
Но пока не нашел как убрать фокус.
 
 Top
Zireael
Отправлено: 26 Апреля, 2019 - 14:54:31
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4464
Дата рег-ции: Нояб. 2017  
Репутация: 585




Зачем что-то заменять, 0 - галка не выбрана, всё остальное выбрана.
 
 Top
007wan
Отправлено: 26 Апреля, 2019 - 14:58:25
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1837
Дата рег-ции: Март 2017  
Репутация: -2




Zireael , Я когда сохраняю в файл значения, то все значения галочек равны либо 1, либо 0, кроме последней нажатой - окна либо 8, либо 9. А при запуске программы все галочки загружаются как надо, кроме одной, которая была выбрана последней. ОН ставит либо 8, либо 9 значение, но SendMEssage посылает значение этой галочки, например, 8, т.е "выключена", но он всёравно ставит ее "чекнутой"
(Добавление)
А как мне переделать из sendmessage в SendMessage такие строчки
CODE:

sendmessage(CB_ADDSTRING, 0, address(#Bute_Combobox1[0]), formatiw(Object_Combobox1));
sendmessage(EM_LIMITTEXT, 70, 0, formatiw(Object_Edit1));
Status_Combobox1 = sendmessage(CB_GETCURSEL, 0, 0, formatiw(Object_Combobox1));
sendmessage(LB_SETHORIZONTALEXTENT, Size[0], 0, formatiw(Object_Listbox1));
sendmessage(LB_ADDSTRING, 0, address(#c[0]), formatiw(Object_Listbox1));
count = sendmessage(LB_GETCOUNT, 0, 0, formatiw(Object_Listbox1));
sendmessage(LB_SETTOPINDEX, count-1, 0, formatiw(Object_Listbox1));

Для вас это покажется смешным, но у меня почти все сообщения SendMessage и я хочу, что бы все такие оставались : )
 
 Top
Zireael
Отправлено: 26 Апреля, 2019 - 15:15:14
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4464
Дата рег-ции: Нояб. 2017  
Репутация: 585




 Цитата:
как мне переделать из sendmessage в SendMessage

 Цитата:
sendmessage(CB_ADDSTRING, 0, address(#Bute_Combobox1[0]), formatiw(Object_Combobox1));

CODE:
SendMessage(Object_Combobox1, CB_ADDSTRING, 0, address(#Bute_Combobox1[0]));
 
 Top
Страниц (22): В начало « 14 15 16 17 18 19 20 [21] 22 »
Сейчас эту тему просматривают: 37 (гостей: 37, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by