Группы пользователей Autodesk


Описание диалогового окна с помощью DCL - часть 2


Обратите внимание, что положению переключателя «lightweight» (компактная полилиния) присвоено значение 1. Значение 1 (это строка, а не целое число) указывает, что данное положение должно быть активным по умолчанию. Другими словами, при появлении диалогового окна на экране в переключателе устанавливается выбранным именно этот вариант. Следует также запомнить, что в DCL-файлах символами комментариев являются две косых черты, а не точка с запятой, как в программах AutoLISP.

  • Опишите с помощью следующего кода переключатель, используемый для задания метода создания объектов:
  • : boxed_radio_column { // определяет положение кнопки-переключателя

    label = "Tile Creation Method";

    : radio_button { // определяет кнопку-переключатель ActiveX

    label = "&ActiveX Automation";

    key = "gp_actx";

    value = "1";

    }

    : radio_button { // определяет кнопку-переключатель (функции entmake)

    label = "&Entmake";

    key = "gp_emake";

    }

    : radio_button { // определяет кнопку-переключатель (команды)

    label = "&Command";

    key = "gp_cmd";

    }

    }

  • Для описания текстовых полей, в которых будет задаваться размер плиток и расстояния между ними, добавьте следующий код:
  • : edit_box { // определяет окно редактирования "Радиус плитки"

    label = "&Radius of tile";

    key = "gp_trad";

    edit_width = 6;

    }

    : edit_box { // определяет окно редактирования "Расстояние между плитками"

    label = "S&pacing between tiles";

    key = "gp_spac";

    edit_width = 6;

    }

    Обратим внимание, что текстовым полям не присваивается никакого исходного значения. Значение по умолчанию для каждого текстового поля задаются из AutoLISP-программы.

  • Добавьте следующий код для кнопок «OK» и «Cancel»:
  • : row { // определяет кнопки "OK"/"Отмена"

    : spacer { width = 1; }

    : button { // определяет кнопку "OK"

    label = "OK";

    is_default = true;

    key = "accept";

    width = 8;

    fixed_width = true;

    }

    : button { // определяет кнопку "Отмена"

    label = "Cancel";

    is_cancel = true;

    key = "cancel";

    width = 8;

    fixed_width = true;

    }

    : spacer { width = 1;}

    }

    Обе кнопки описаны внутри одного ряда, поэтому они устанавливаются по одной горизонтальной линии.

  • Установите курсор в верхней части окна текстового редактора и вставьте первой строкой следующее выражение:
  • gp_mainDialog : dialog {

  • Директива dialog требует закрывающей фигурной скобки. Поэтому поместите курсор в конец файла и вставьте закрывающую фигурную скобку последней строкой DCL-кода:
  • }

     




    Начало  Назад  Вперед