Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Немодальные окна. Edit

Страниц (4): « 1 2 [3] 4 »
 

21. konctantin777 - 20 Июня, 2021 - 05:27:29 - перейти к сообщению
Подскажите,пожалуйста, как другие данные сохранять ?
Т.е. есть указатель на диалог
CODE:
win wind=window ("Кибор", "446185009-884503", -1)

Надо сохранить текущие координаты, чтобы при запуске, сразу перемещять туда где был...
И меняется ли класс окна ? Т.е. искать по классу стоит ?

wind.left = позиция по x относительно левого края экрана
wind.top = позиция по y относительно левого края экрана
//wind.left =0; wind.top =0; //

movewindow(wind);
22. Zireael - 20 Июня, 2021 - 05:43:15 - перейти к сообщению
 Цитата:
И меняется ли класс окна ?

Меняется. Получить хендл окна можно через gethwnd.
 Цитата:
как другие данные сохранять ?

Точно также как в примере выше.
23. konctantin777 - 20 Июня, 2021 - 06:24:30 - перейти к сообщению
CODE:
if(GetPrivateProfileString ("left", "left", 0, address (#str[0]), 255, path)) //
wind.left=wind.left (#str[0]);

if(GetPrivateProfileString ("top", "top", 0, address (#str[0]), 255, path)) //
wind.top=wind.top (#str[0]);


WritePrivateProfileString ("left", "left", format(wind.left), path);
WritePrivateProfileString ("top", "top", format(wind.left), path);


По подобию делал- ошибку выдаёт
24. Zireael - 20 Июня, 2021 - 06:28:10 - перейти к сообщению
 Цитата:
wind.left=wind.left (#str[0]);

И что это?
25. konctantin777 - 20 Июня, 2021 - 06:36:18 - перейти к сообщению
 Zireael пишет:
И что это?

Если бы я знал.... Потому и попросил помочь, что просто делаю по аналогии, по шаблону. Потом пробую подбором менять, и, если всё плохо- спрашиваю (
26. Zireael - 20 Июня, 2021 - 06:40:25 - перейти к сообщению
CODE:
wind.left=wind.left (#str[0]);

CODE:
wind.left = formatsn(format(#str[0]));
27. konctantin777 - 20 Июня, 2021 - 08:04:26 - перейти к сообщению
Спасибо )
CODE:
win wind=window (-1, "446185009-884503", -1);
WritePrivateProfileString ("Default", "left", format(wind.leftclient), path);
WritePrivateProfileString ("Default", "top", format(wind.topclient), path);

Подскажите вот тут где ошибка ?
28. Zireael - 20 Июня, 2021 - 08:09:32 - перейти к сообщению
 Цитата:
Подскажите вот тут где ошибка ?

Тут не ошибок. Отсутствует проверка что окно нашлось.
29. konctantin777 - 20 Июня, 2021 - 08:47:46 - перейти к сообщению
А как можно передвигать диалог ? Получается
CODE:
hidedialog(0); showdialog(0, "Бот", wind.leftclient, wind.topclient, 194, 542, 1, 1);

Но не получаются варианты
CODE:
#define SWP_NOSIZE 1
external(INT, "SetWindowPos", "SetWindowPos", "User32.dll");

//start("C:\Windows\notepad.exe"); // открыть блокнот
while(window ("Бот", -1, -1)==0)sleep(100); // ждём когда откроется
win w=window ("Бот", -1, -1); // получить указатель на окно блокнота

// переместить окно в координаты 100, 100 не меняя размер окна
SetWindowPos(formatwi(w), 0, 100, 100, 0, 0, SWP_NOSIZE);

CODE:
win wind=window ("Бот", -1, -1);
wind.left =110; wind.top =110;
movewindow(wind);
30. Zireael - 20 Июня, 2021 - 08:58:57 - перейти к сообщению
 Цитата:
А как можно передвигать диалог ?

CODE:
createdialog(0);
showdialog(0, "Бот", 0, 0, 194, 542, 1, 1);
win wind=formatiw(gethwnd(0));
setwindowparam(wind);

pause(2000);
wind.left = 110; wind.top = 110;
movewindow(wind);

pause(2000);
wind.left = 510; wind.top = 310;
movewindow(wind);

pause(2000);

Powered by ExBB FM 1.0 Final