Тема: Не выполняется set_tile

Здравствуте, уважаемые. Вот какая проблема (acad 2002):
есть диалог и функция его обработки, которая при нажатии
кнопки bt_vs должна заносить число в editbox ed_vs.
Но она не работает, т.е ничего не происходит,
(set_tile "ed_vs" (rtos 333)) отрабатывает, но
значение в ed_vs нету.
Что тут не так?

;;----------------- start ----------------------
(defun dlg ()
  (setq dcl_id (load_dialog "test1.dcl"))
  (setq stepz 2)
  (while (>= stepz 2)
    (if (null (new_dialog "test1" dcl_id)) (exit))
   (action_tile "accept" "(done_dialog 1)")
    (action_tile "bt_vs" "(done_dialog 8)")
    (setq stepz (start_dialog))
    (cond
      ((= stepz 1)
        (command "OSNAP" "NONE")
      )
      ((= stepz 8)
        (set_tile "ed_vs" (rtos 333))
        (mode_tile "ed_vs" 2)
      )
    )
  )
  (unload_dialog dcl_id)
)
;;------------------ end ----------------------
============== test1.dcl =======================
test1: dialog  {
  :row{
    :edit_box{
      label="Величина (м):";
      value="0";
      key="ed_vs";
      edit_width=10;
    }
    :button{
      label="Указать <";
      key="bt_vs";
      fixed_width=true;
    }
   }
}
==============================================

Re: Не выполняется set_tile

У Вас вызов SET_TILE происходит, когда диалог завершен, т. е. START_DIALOG закончила работу и вернула значение. Далее идет анализ этого значения, но диалог-то в это время не существует и, естественно SET_TILE ничего никуда не помещает.

Re: Не выполняется set_tile

> Пастух
точно! вот спасибо. а то я который час голову ломаю