Исходный код вики Диалоговые окна макросов PUMOTIX
Редактировал(а) Edgar Allan Poe 2024/02/29 11:49
Скрыть последних авторов
| author | version | line-number | content |
|---|---|---|---|
| |
1.1 | 1 | {{info title="**Внимание!**"}} |
| 2 | Вызов диалоговых окон из макросов доступен с версии PUMOTIX 3.5.0. Более ранние версии не поддерживают данный функционал. | ||
| 3 | {{/info}} | ||
| 4 | |||
| 5 | Диалоговые окна позволяют пользователю отправлять значения в макрос из интерфейса программы (до этого было несколько параметров, которые можно отправлять с помощью строки G-кода). | ||
| 6 | |||
| 7 | Функция вызова диалогового окна реализована через команду **ShowDialogSimple()** и предназначена для вызова окна, имеющего текстовое описание и несколько полей для ввода значения. | ||
| 8 | |||
| 9 | Пример вызова функции **ShowDialogSimple()**: | ||
| 10 | |||
| 11 | {{code language="lua"}} | ||
| 12 | local res,out1,out2 = ShowDialogSimple("Введите параметры","","") | ||
| 13 | {{/code}} | ||
| 14 | |||
| 15 | Результат такой команды представлен на скриншоте. | ||
| 16 | |||
| |
3.1 | 17 | [[image:PUMOTIX_Dialog_ru.png||data-xwiki-image-style-alignment="center" height="250" width="305"]] |
| |
1.1 | 18 | |
| 19 | Пример общего вида функции: | ||
| 20 | |||
| 21 | {{code language="lua"}} | ||
| 22 | Bool result, String out1, String out2, ... ,String outn = | ||
| 23 | ShowDialogSimple(String label, String in1, ... ,String inn); | ||
| 24 | {{/code}} | ||
| 25 | |||
| 26 | |**Bool result**|переменная, принимающая значение //true//, если в вызванном окне была нажата кнопка «ОК», и //false//, если была нажата кнопка «Отмена». | ||
| 27 | |**String out1,String out2,..., String outn**|значения полей, которые были заполнены в диалоговом окне. | ||
| 28 | |**String label**|строка с описанием, которое появится в вызванном окне. | ||
| |
4.1 | 29 | |**String in1, ...,String inn**|строки со значениями, которыми будут заполнены по умолчанию поля в диалоговом окне. Количество полей, которые будут отображены в диалоговом окне, зависит от количества значений среди аргументов функции **in1, in2, ... , inn**. |
| |
1.1 | 30 | |
| 31 | С помощью функции также можно выводить простые запросы типа **да/нет**. Для этого достаточно ввести один параметр, который выведется на экран в виде текста, и запросить результат в переменную. Пример: | ||
| 32 | |||
| 33 | {{code language="lua"}} | ||
| 34 | local res = ShowDialogSimple("Произошла ошибка. Всё равно выполнить задание?") | ||
| 35 | {{/code}} |