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

Страниц (1): [1]
 

1. Alexey_Tish - 09 Сентября, 2023 - 13:03:14 - перейти к сообщению
У меня есть диалоговое окно, некий управленец, который должен регулировать работу программ, включать при надобности и выключать 3 эмулятора, запускать там нужного бота.
И вот у меня созрел вопрос, как правильно ожидать нажатие или выбор чего-либо, учитывая, что там присутствует 25 различных вариаций действий ? Или все же реализовывать это несколькими диалогами ?

CODE:
int pos_size_professions0[5][4];
string text_professions0[5];
int flag_professions0[5];

pos_size_professions0[0][0]=23; pos_size_professions0[0][1]=80; pos_size_professions0[0][2]=100; pos_size_professions0[0][3]=21;
pos_size_professions0[1][0]=175; pos_size_professions0[1][1]=80; pos_size_professions0[1][2]=100; pos_size_professions0[1][3]=20;
pos_size_professions0[2][0]=321; pos_size_professions0[2][1]=78; pos_size_professions0[2][2]=100; pos_size_professions0[2][3]=20;
pos_size_professions0[3][0]=86; pos_size_professions0[3][1]=161; pos_size_professions0[3][2]=100; pos_size_professions0[3][3]=20;
pos_size_professions0[4][0]=252; pos_size_professions0[4][1]=160; pos_size_professions0[4][2]=100; pos_size_professions0[4][3]=20;
text_professions0[0]=" Запустить"; text_professions0[1]=" Запустить"; text_professions0[2]=" Запустить"; text_professions0[3]=" Запустить"; text_professions0[4]=" Запустить";

int pos_size_check0[6][4];
string text_check0[6];
int flag_check0[6];

pos_size_check0[0][0]=30; pos_size_check0[0][1]=108; pos_size_check0[0][2]=91; pos_size_check0[0][3]=20;
pos_size_check0[1][0]=328; pos_size_check0[1][1]=109; pos_size_check0[1][2]=83; pos_size_check0[1][3]=20;
pos_size_check0[2][0]=182; pos_size_check0[2][1]=110; pos_size_check0[2][2]=85; pos_size_check0[2][3]=20;
pos_size_check0[3][0]=92; pos_size_check0[3][1]=188; pos_size_check0[3][2]=86; pos_size_check0[3][3]=20;
pos_size_check0[4][0]=259; pos_size_check0[4][1]=188; pos_size_check0[4][2]=90; pos_size_check0[4][3]=20;
pos_size_check0[5][0]=183; pos_size_check0[5][1]=245; pos_size_check0[5][2]=80; pos_size_check0[5][3]=20;
text_check0[0]=" Остановить"; text_check0[1]=" Остановить"; text_check0[2]=" Остановить"; text_check0[3]=" Остановить"; text_check0[4]=" Остановить"; text_check0[5]="Завершить";
flag_check0[0]=0; flag_check0[1]=0; flag_check0[2]=0; flag_check0[3]=0; flag_check0[4]=0; flag_check0[5]=0;

int pos_size_combo0[4][4];
string text_combo0[4][6];
int strok_combo0[4];
int flag_combo0[4];

pos_size_combo0[0][0]=24; pos_size_combo0[0][1]=50; pos_size_combo0[0][2]=100; pos_size_combo0[0][3]=80;
pos_size_combo0[1][0]=177; pos_size_combo0[1][1]=49; pos_size_combo0[1][2]=100; pos_size_combo0[1][3]=80;
pos_size_combo0[2][0]=323; pos_size_combo0[2][1]=48; pos_size_combo0[2][2]=100; pos_size_combo0[2][3]=80;
pos_size_combo0[3][0]=174; pos_size_combo0[3][1]=219; pos_size_combo0[3][2]=100; pos_size_combo0[3][3]=80;
strok_combo0[0]=4; strok_combo0[1]=4; strok_combo0[2]=4; strok_combo0[3]=6;
text_combo0[0][0]=" 1.Рыбачок"; text_combo0[0][1]=" 2.Лесоруб"; text_combo0[0][2]=" 3.Фармер"; text_combo0[0][3]=" 4.Деффер";
text_combo0[1][0]=" 1.Рыбачок"; text_combo0[1][1]=" 2.Лесоруб"; text_combo0[1][2]=" 3.Фармер"; text_combo0[1][3]=" 4.Деффер";
text_combo0[2][0]=" 1.Рыбачок"; text_combo0[2][1]=" 2.Лесоруб"; text_combo0[2][2]=" 3.Фармер"; text_combo0[2][3]=" 4.Деффер";
text_combo0[3][0]=" 1-ый бот"; text_combo0[3][1]=" 2-ой бот"; text_combo0[3][2]=" 3-ий бот"; text_combo0[3][3]=" Трейдер"; text_combo0[3][4]=" Система Хр"; text_combo0[3][5]=" Скрипт и ботов";
flag_combo0[0]=0; flag_combo0[1]=0; flag_combo0[2]=0; flag_combo0[3]=0;

int pos_size_static0[5][4];
string text_static0[5];

pos_size_static0[0][0]=9; pos_size_static0[0][1]=27; pos_size_static0[0][2]=143; pos_size_static0[0][3]=20;
pos_size_static0[1][0]=159; pos_size_static0[1][1]=26; pos_size_static0[1][2]=143; pos_size_static0[1][3]=15;
pos_size_static0[2][0]=307; pos_size_static0[2][1]=26; pos_size_static0[2][2]=139; pos_size_static0[2][3]=20;
pos_size_static0[3][0]=59; pos_size_static0[3][1]=139; pos_size_static0[3][2]=150; pos_size_static0[3][3]=20;
pos_size_static0[4][0]=237; pos_size_static0[4][1]=138; pos_size_static0[4][2]=132; pos_size_static0[4][3]=20;
text_static0[0]=" ------- 1-ый Ботик -------"; text_static0[1]=" ------- 2-ой Ботик -------"; text_static0[2]=" ------- 3-ий Ботик -------"; text_static0[3]=" ----- Система хранения -----"; text_static0[4]=" ------ Трейдер ------ ";

createdialog(0, BUTTON, #pos_size_professions0[0][0], #text_professions0[0], #flag_professions0[0] |
CHECK, #pos_size_check0[0][0], #text_check0[0], #flag_check0[0] |
COMBO, #pos_size_combo0[0][0], #text_combo0[0][0], #strok_combo0[0], #flag_combo0[0] |
STATIC, #pos_size_static0[0][0], #text_static0[0]);

showdialog(0, "
Упраление", 776, 218, 466, 313, 2, 1);
2. Zireael - 09 Сентября, 2023 - 13:25:15 - перейти к сообщению
Добавить в конце вашего кода:
CODE:
loop()
{
if(flag_professions0[0] == 1) // если нажата кнопка
{
flag_professions0[0] = 0; // сборосить флаг нажатия
// дальше нужные действия
messagebox("Нажата кнопка0");
}
if(flag_professions0[1] == 1) // если нажата кнопка
{
flag_professions0[1] = 0; // сборосить флаг нажатия
// дальше нужные действия
messagebox("Нажата кнопка1");
}
if(flag_professions0[2] == 1) // если нажата кнопка
{
flag_professions0[2] = 0; // сборосить флаг нажатия
// дальше нужные действия
messagebox("Нажата кнопка2");
}
sleep(10);
}

В данном примере проверяется нажатие на 3 кнопки.

Powered by ExBB FM 1.0 Final