| sedoi |
Отправлено: 20 Августа, 2025 - 16:16:50
|


Участник

Покинул форум
Сообщений всего: 85
Дата рег-ции: Апр. 2016
Репутация: 5

|
Asimut пишет: Zireael пишет: Заменить на:
CODE:
flag_check0[0]=getcontrol(CHECK_1); Да оно, я пытался также только стачало гетконтрол=флагу, не выходило))
Сейчас лучше но на 50%, галка появляется в диалоге если в начальном окне ее поставить, НО в дальнейшем допустим я не хочу отпускать и в диалоге убираю галку, должно переключится на продажу а этого нет, опять отпускает. Если запутанно объяснил извиняюсь, старался пошагово.
там где проверяет в блоке кода отпустить или забрать нужно сделать проверку если галка стоит то отпускаем иначе забирать, проще сказать если галка стоит гото нка переменную отпустить иначе гото на переменную забрать. |
| |
|
| Asimut |
Отправлено: 20 Августа, 2025 - 17:26:14
|


Наблюдатель

Покинул форум
Сообщений всего: 49
Дата рег-ции: Июнь 2020
Репутация: 0

|
Терзают смутные сомнения что нужно использовать sendcontrol чтобы из диалога возвращать данные для изменения галки 
(Добавление)
sedoi пишет: там где проверяет в блоке кода отпустить или забрать нужно сделать проверку если галка стоит то отпускаем иначе забирать, проще сказать если галка стоит гото нка переменную отпустить иначе гото на переменную забрать.
Это там есть CODE:if getcontrol(CHECK_1)==1 проверка что делать продавать или отпускать, 0 продавать, 1 отпускать, но работает это только если в начале ставлю галку, в диалоге не работает. Ну не знаю как еще написать понятнее)) Суть что через диалог их надо связать, сейчас на половину работает как сломанный выключатель))
Про sendcontrol почитаю, вроде он должен возвращать контролу значение, а оно как раз выставлялось в CODE:getcontrol(CHECK_1) 0
Возможно я ошибаюсь но надо копать))
(Добавление)
CODE:sendcontrol flag_check0[0]=getcontrol(CHECK_1);
Может что то безумного такого, диалог отправляет в гетконтрол стоит галка или нет, а гетконтрол уже проверяется продавать или отпускать(этот блок кода есть и рабочий)
(Добавление)
Метод научного тыка еще не отменяли 
(Добавление)
CODE:flag_check0[0]=getcontrol(CHECK_1);
{
sendcontrol(flag_check0[0]=1, getcontrol(CHECK_1 1));
}
что то похожее на это) логика если в начальном окне нет галки то и в диалоге ее нет, поставил галку в диалоге, она вернула новое значение и далее блок кода начитает работать с новым значением перезапускать скрипт не нужно. Но код это всего лишь догадка.
(Добавление)
А может просто тупо сделать еще один блок кода который проверяет продавать или отпускать
CODE:if getcontrol(CHECK_1)==1
только с флагом?
Хотя разные изначальные галки наверное потом будут конфликтовать 
(Добавление)
Если будет стоять галка
то отпускать, только два кода нужно будет разруливать и не факт что изначально если галки не было в окне при запуске оно все сработает. |
| |
|
| Zireael |
Отправлено: 22 Августа, 2025 - 02:51:20
|


Эксперт

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

|
Цитата: Если можно сделать ведь это хорошо и это опыт и знания для меня скажем так
CODE:CREATE_INTERFACE
{
DIALOG "ТР2_1440.900v0.6" 300 210 //РазмерX РазмерY
BUTTONSCRIPT "Запустить" 90 145 110 25 //ПозицияX ПозицияY РазмерX РазмерY
//Добавление контролов управления ......
CHECK_1 0 /*Выключена*/ "Отпускать РЫБАФ" 25 75 140 18 //ПозицияX ПозицияY РазмерX РазмерY
}
int pos_size_check0[1][4];
string text_check0[1];
int flag_check0[1];
pos_size_check0[0][0]=48; pos_size_check0[0][1]=18; pos_size_check0[0][2]=120; pos_size_check0[0][3]=20;
text_check0[0]="Отпускать РЫБАФ";
flag_check0[0]=getcontrol(CHECK_1);
createdialog(0, CHECK, #pos_size_check0[0][0], #text_check0[0], #flag_check0[0]);
showdialog(0, "Диалог", 1155, 570, 250, 300, 1, 1);
loop() sleep(10);
function getmessage(0, WM_COMMAND)
{
sendcontrol(CHECK_1, flag_check0[0]);
} |
| |
|
| Asimut |
Отправлено: 22 Августа, 2025 - 05:03:59
|


Наблюдатель

Покинул форум
Сообщений всего: 49
Дата рег-ции: Июнь 2020
Репутация: 0

|
Zireael пишет: Цитата: Если можно сделать ведь это хорошо и это опыт и знания для меня скажем так
CODE:
function getmessage(0, WM_COMMAND)
{
sendcontrol(CHECK_1, flag_check0[0]);
}
Благодарю, эти строки прям то что нужно респек и уважуха)) сам бы я долгу мучался)) |
| |
|
|