Тема: ProgressBar in ObjectDCL

Никак не могу заставить работать прогресс! Надо чтобы вылезал диалог на котором только прогресс и создать иммитацию его движения то есть написать на лиспе цикл плавного увеличения значения Value у прогресса! С циклом все нормально но не получается чтобы это все происходило на глазах! Подскажите ...

Re: ProgressBar in ObjectDCL

Если только строка прогреса, то проще пользоваться библиотекой doslib.

Re: ProgressBar in ObjectDCL

Не  он выводит прогресс в строку состояния када а мне надо посередине экрана

Re: ProgressBar in ObjectDCL

Смотри функцию dos_getprgress
А в строку состояния - dos_getprogbar

Re: ProgressBar in ObjectDCL

Кайф Спасибо!!! Век живи век учись! Но если кто знает как сделать на ObjectDCL все равно научите!

Re: ProgressBar in ObjectDCL

А в чем конкретно проблема с ObjectDCL? Из вопроса этого не видно.
По идее ничего сложного быть не должно.
- добавь в диалог элемент ProgressBar. Установи свойства MinValue и MaxValue.
- запускаешь диалог
- и меняешь себе значение свойства Value как тебе нужно. В соответствии со значением Value и будет отражаться ProgressBar.

Re: ProgressBar in ObjectDCL

Глюк такой:
Есть Modal form, на нем ProgressBar:
Min value 0, Max value 100, Value 0.
Требуется:
в указанный момент вылезти Modal form на экран, ProgressBar проходит свой путь от 0 до 100 причем с нужной скоростью и автоматом закрывается.
Как организовать это лиспом не знаю: Не получается вывести на экран диалог и заставить ProgressBar работать-может мозги засорились если кто поможет-спасибо ему

Re: ProgressBar in ObjectDCL

Я не знаю в чем проблема. Надо видеть текст.
Я набросал - сходу все получилось.
Есть test.odc,  а в нем окно DclForm1
В окне есть ProgressBar test_DclForm1_ProgressBar1 и кнопка DclForm1_TextButton1
При нажатии на кнопку ProgressBar - прокручивается. Текст такой.

(defun Test ()
  (setq odcl_Test "test.odc")
  (Odcl_LoadProject odcl_Test t)
  (Odcl_Form_Show test_DclForm1)
)
(defun c:DclForm1_TextButton1_OnClicked (/ i)
  (setq i 1)
  (repeat 100
    (Odcl_Control_SetProperty test_DclForm1_ProgressBar1 "Value" i)
    (setq i (1+ i))
  )
)

Re: ProgressBar in ObjectDCL

Добавление к предыдущему.
Если надо, чтобы при старте окна сразу запускался Progress Bar используй событие onInitialize.

Re: ProgressBar in ObjectDCL

Спасиба щас опробую

Re: ProgressBar in ObjectDCL

Она это делает очень быстро-визуального эффекта никакого. Надо чтобы скорость движения прогресса регулировалась

Re: ProgressBar in ObjectDCL

Ну, извини. Конечно происходит быстро.
Я так понимаю, что строка прогресса должна отражать состояние какого-то твоего процесса.
После того как добавишь в текст своего кода - будешь прериодически, в известные только тебе одному моменты сдвигать ProgressBar с помощью

(Odcl_Control_SetProperty test_DclForm1_ProgressBar1 "Value" i)
(setq i (1+ i))

Используя dos_getprogress все равно придется делать тоже самое. Здесь надо ПРОГРАММИРОВАТЬ.

Re: ProgressBar in ObjectDCL

не  dos_getprogress-это кайф все идет как надо один минус -лишний arx при установке