Исходный код вики Диалоговые окна макросов 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}} |