Прохожий
Покинул форум
Сообщений всего: 5
Дата рег-ции: Май 2024
Репутация: 0
|
Здравствуйте!
Можете ли Вы подсказать мне как реализовать окно ввода текста/числа для дальнейшего применения его в коде?
перед стартом скрипта я бы хотел иметь возможность набрать текст в поле для ввода (EDIT_1), а после использовать это например в блоке KEY вместо заранее введённого текста.
Я так подозреваю нужно обьявить какие-то переменные.. умничать не буду, прошу помощи.
в этом примере скрипт делает клик в нужном поле (активирует его, в игре)
а после вводит текст в это окно
вот на всякий случай ссылка на этот образец в визуальном редакторе, если удобно:(для просмотра ссылки Вам необходимо авторизоваться) Ниже код. Спасибо за уделённое время!
win W_Kib;
int Size_Key_Char_Kib = -1;
INITDIALOG
{
sendcontrol(EDIT_0, individualcode());
}
CREATE_INTERFACE
{
DIALOG "ROBO-BJORN" 237 180
BUTTONSCRIPT "Запустить" 125 121 100 25
STATIC_0 "Ключ" 10 10 90 18
STATIC_1 "Остановить: CTRL+SHIFT+Z" 124 84 100 30
STATIC_2 "сюда ввести" 10 60 90 18
EDIT_0 "" 105 8 120 18
EDIT_1 "" 90 60 50 20
}
Mouse(0, #W_Kib, W_Kib.leftclient, W_Kib.topclient, 1000, 900, 100, "Левую клик", 1000);
Key(0, W_Kib, 0, 0, "здесь получить", "Ввод текста", 0);
function Key(int ew, win w, int p1, int c, string text, string k, int p2)
{
pause(p1);
if (ew==0)
{
if (k=="Клик"){key(c); goto hy;}
if (k=="Нажать"){keydown(c); goto hy;}
if (k=="Отпустить"){keyup(c); goto hy;}
if (k=="Ввод текста"){key(text, 0, 1, getwindow()); goto hy;}
}
if (ew==1)
{
if (k=="Клик"){if ((c>191 && c<256) || c==168 || c==184) sendlanguage("00000419", formatiw(gethwnd())); sendmessage(WM_CHAR, c, 1, w); goto hy;}
if (k=="Нажать"){sendkeydown(c, w); goto hy;}
if (k=="Отпустить"){sendkeyup(c, w); goto hy;}
if (k=="Ввод текста")
{
if (Size_Key_Char_Kib==-1)
{
Size_Key_Char_Kib=100;
new char Key_CHAR[Size_Key_Char_Kib+1];
}
int size_key=size(text);
if (Size_Key_Char_Kib<size_key)
{
delete Key_CHAR;
Size_Key_Char_Kib=size_key;
new char Key_CHAR[Size_Key_Char_Kib+1];
}
strcpy(#Key_CHAR[0], text);
for (int n=0; n<size_key; n++)
{
if ((Key_CHAR[n]>191 && Key_CHAR[n]<256) || Key_CHAR[n]==168 || Key_CHAR[n]==184) sendlanguage("00000419", formatiw(gethwnd()));
sendmessage(WM_CHAR, Key_CHAR[n], 1, w);
sleep(20);
}
}
}
hy: pause (p2);
}
function Mouse(int ew, win #w, int v_x, int v_y, int p1, int x, int y, string m, int p2)
{
pause(p1);
if (ew==0 || ew==1)
{
if (ew==1){x=v_x+x; y=v_y+y;}
if (m=="Левую клик"){mouse(LEFT, x, y); goto hy;}
if (m=="Среднюю клик"){mouse(MIDDLE, x, y); goto hy;}
if (m=="Правую клик"){mouse(RIGHT, x, y); goto hy;}
if (m=="Левую нажать"){mousedown(LEFT, x, y); goto hy;}
if (m=="Среднюю нажать"){mousedown(MIDDLE, x, y); goto hy;}
if (m=="Правую нажать"){mousedown(RIGHT, x, y); goto hy;}
if (m=="Левую отпустить"){mouseup(LEFT, x, y); goto hy;}
if (m=="Среднюю отпустить"){mouseup(MIDDLE, x, y); goto hy;}
if (m=="Правую отпустить"){mouseup(RIGHT, x, y); goto hy;}
if (m=="Левая двойной клик"){mousedbl(LEFT, x, y); goto hy;}
if (m=="Средняя двойной клик"){mousedbl(MIDDLE, x, y); goto hy;}
if (m=="Правая двойной клик"){mousedbl(RIGHT, x, y); goto hy;}
if (m=="Переместить"){mousemove(x, y); goto hy;}
}
if (ew==2)
{
if (m=="Левую клик"){sendmouse(LEFT, x, y, w); goto hy;}
if (m=="Среднюю клик"){sendmouse(MIDDLE, x, y, w); goto hy;}
if (m=="Правую клик"){sendmouse(RIGHT, x, y, w); goto hy;}
if (m=="Левую нажать"){sendmousedown(LEFT, x, y, w); goto hy;}
if (m=="Среднюю нажать"){sendmousedown(MIDDLE, x, y, w); goto hy;}
if (m=="Правую нажать"){sendmousedown(RIGHT, x, y, w); goto hy;}
if (m=="Левую отпустить"){sendmouseup(LEFT, x, y, w); goto hy;}
if (m=="Среднюю отпустить"){sendmouseup(MIDDLE, x, y, w); goto hy;}
if (m=="Правую отпустить"){sendmouseup(RIGHT, x, y, w); goto hy;}
if (m=="Левая двойной клик"){sendmousedbl(LEFT, x, y, w); goto hy;}
if (m=="Средняя двойной клик"){sendmousedbl(MIDDLE, x, y, w); goto hy;}
if (m=="Правая двойной клик"){sendmousedbl(RIGHT, x, y, w); goto hy;}
if (m=="Переместить")sendmousemove(x, y, w);
}
hy: if (m!="Бездействие")pause (p2);
}(Отредактировано автором: 22 Мая, 2024 - 17:12:16) |