Название: Обновление интерфейса типа view->upate() (в KDevelop было) Отправлено: Даша от Декабрь 19, 2012, 13:37 По кнопке запускаю алгоритм, в котором переодически textedit->append("полет нормальный")
Как же пограмотнее сделать, что бы сообщения в течении работы появлялись,а не по завершении алгоритма? В KDevelop было view->upate(), а в Qt что все таки поток создавать? Название: Re: Обновление интерфейса типа view->upate() (в KDevelop было) Отправлено: Bepec от Декабрь 19, 2012, 13:45 qApp->processEvents().
А ещё лучше выносить в отдельный поток. Название: Re: Обновление интерфейса типа view->upate() (в KDevelop было) Отправлено: gil9red от Декабрь 19, 2012, 14:34 "Периодически" это в цикле или по таймеру?
хотя какая разница, просто вставляете, например, перед textedit->append("полет нормальный") qApp->processEvents() и радуетесь, что интерфейс программы не виснет :) Вот только нужно не забывать о подключении QApplication Второй вариант: через потоки самый простой вариант переопределяйте метод run() класса QThread, и запускайте поток, впрочем в документации это подробно описано ;) Название: Re: Обновление интерфейса типа view->upate() (в KDevelop было) Отправлено: skandinavijos от Декабрь 19, 2012, 15:14 а в чем проблема создать поток? переопределить один метод и связать одну пару слот-сигнал. к тому же это более кошерно.
Название: Re: Обновление интерфейса типа view->upate() (в KDevelop было) Отправлено: gil9red от Декабрь 19, 2012, 23:15 Иногда проще добавить одну строчку, чем наследоваться от класса, переопределять в нем какие то методы, и в них что-то помещать - мороки меньше :)
И пусть автор темы сама решает, что больше подходит по заданию ;) Название: Re: Обновление интерфейса типа view->upate() (в KDevelop было) Отправлено: Даша от Декабрь 20, 2012, 09:59 Спасибо, народ!
Название: Re: Обновление интерфейса типа view->upate() (в KDevelop было) Отправлено: skandinavijos от Декабрь 20, 2012, 19:52 не, просто от processEvent, например, окно не отрисовывается заново, если его перекрыть другим. с потоком такого не было. во всяком случае с моим алгоритмом, который почти пол часа считал - было так, хотя может и я что-то не так делал
|