Denidz писал(а):
...да и зачем плодить кнопки когда можно одной обойтись. если бы была функция типа @ToolbarButtonState Toolbarname.Buttonname. только сделать вот так @ToolbarButtonState Toolbarname.Buttonname [Number], где Number необязательный параметр 1/0 - соответственно нажато/отжато ... и в последней строчке Функция которая приводит кнопку в статус отжатой.
Бажання відтиснути режимну кнопку останньою командою зі скрипта обробки події, який і прописаний в цій кнопці, навряд-чи можливо реалізувати. Функція
@ToolbarButtonState Toolbarname.Buttonname наразі може використовуватись або в блоці коду що передує включенню обробки події, або в іншому скрипті. Наприклад: скрипт Proba1 аналізує, чи обробляється подія скриптом Proba, виконує рукав1 і включає обробку події, або виконує рукав2 і виключає обробку події. Дуже добре, хоч і є аж дві кнопки
Код:
;Скрипт на кнопці Proba1
$A=@ToolbarButtonState До_створення_лісових_карт.Proba
@If $A=1 then @Dialog.Message Буде виключено обробку події
@If $A=1 then %Script.До_створення_лісових_карт.Proba
@If $A=1 then @Goto %ButtonOff
@Dialog.Message Буде включено обробку події
%Script.До_створення_лісових_карт.Proba
;виконується Рукав1 при включенні обробки події
@Goto %End
%ButtonOff
;виконується Рукав2 при відключенні обробки події
%End
Код:
;Скрипт на кнопці Proba
%Events.OnCollect
@Dialog.Message Запущено скрипт обробки події
От тепер тема:
- якби блок кода скрипта, що прописаний до виклику функції %Events... в скрипті обробки події, виконувався не тільки при натисканні кнопки (включенні обробщика), але й при відтисканні кнопки (виключенні обробщика)
Чи можна буде скрипт Proba1 засунути в код скрипта Proba перед викликом %Events...
Мета - не дати можливість відключити обробку події без виконання рукава2.