|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Andrey Sapozhnikov 2:5020/400 16 Dec 2002 17:46:36 To : Vadim Subject : Re: Вывод в TK -------------------------------------------------------------------------------- Vadim wrote: > Подскажите, кто знает, как мне во время выполнения программы показывать > какой-то текст по мере продвижения. Я делаю вывод в ROText, но он > показывается только после завершения процедуры, связанной с кнопкой. > > Делаю так: > $text=$mw->Scrolled('ROText', > -scrollbars => 'oe', > -width => 120, > -height => 30, > -borderwidth=>1, > )->pack(-side => 'left'); > > for ($i=0;$i<5;$i++) {$text->insert('end',"#");sleep 2;} > Все 5 символов '#' появляются через 10 сек вместе. perldoc Tk::Widget и читать про метод update. > А может по другому надо? В общем, да, по другому. sleep использовать не надо вообще, а надо perldoc Tk::after и пользоваться им, однако придется переосмыслить и весь дизайн приложения на event-driven. Приложение должно выполнять некоторую начальную иницализацию, после чего до конца своей жизни застревать в функции MainLoop. Вся остальная функциональность приложения должна находиться в обработчиках событий. Андрей --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/6577d2cec915.html, оценка из 5, голосов 10
|