Название: Не отображается интерфейс диалога QDialog Отправлено: SunnyBear от Сентября 22, 2015, 00:35 Доброго времени суток.
Проблема заключается в следующем: Есть довольно длинный процесс считывания данных с контроллера по протоколу Modbus. Выглядит это следующим образом: пользователь открывает окно, в котором отображаются данные с контроллера (окно QDialog, помещается в QMdiSubWindow). Далее, открывается окно индикации процесса чтения данных с ПЛК (просто QDialog, который содержит QLabel и QProgressBar, создано в QtDesigner). Как только данные считаны, это окошко закрывается и данные отображаются в "старшем" окне. Однако, в окне не отображаются ни QLabel, ни QProgressBar. Просто пустое окно. Однако, если открывать окно не методом show(), а exec(), то всё нормально работает. Но этот вариант не подходит, т.к. процесс чтения блокируется до закрытия окна :-[ Код: void QKM8600Dialog::setDevice(QDevice *kmDevice) Вот как окно выглядит (http://s020.radikal.ru/i723/1509/4a/d9492821012c.png) А вот так должно выглядеть (http://s017.radikal.ru/i431/1509/b5/ff18919a07d2.png) Буду признателен, если кто-нибудь сможет подсказать в какую сторону хотя бы грести :) Название: Re: Не отображается интерфейс диалога QDialog Отправлено: Old от Сентября 22, 2015, 05:43 Вы не обрабатываете события при чтении данных из контроллера.
Вызывайте метод QApplication::processEvents (или воспользуйтесь аналогичным методом из QEventLoop) в процессе чтения данных. Название: zikieupehl Отправлено: BokyArobby от Сентября 22, 2015, 11:27 fiuymkvrqk
http://vsyo-osvarke.beep.com/apps/contactform/ http://svarka-apparat.beep.com/ http://svarka-apparat.beep.com/index.htm/ http://mega-svarka.beep.com/ http://mega-svarka.beep.com/index.htm/ http://remonto-svarka.beep.com/ http://remonto-svarka.beep.com/index.htm/ http://svarka-blog.beep.com/ http://svarka-blog.beep.com/index.htm/ http://pro-svarky.beep.com/ http://pro-svarky.beep.com/index.htm/ http://instrbest.soup.io/ http://instrbest.soup.io/post/621976181/ http://elektroprof.soup.io/ http://elektroprof.soup.io/post/621985362/ https://electrogarantiya.wordpress.com/ https://electrogarantiya.wordpress.com/2015/09/18/%D0%B3%D0%B0%D1%80%D0%B0%D0%BD%D1%82%D0%B8%D1%8F-%D0%B8-%D0%BF%D1%80%D0%BE%D1%84%D0%B8%D0%BB%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0-%D1%8D%D0%BB%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%BE%D0%B8%D0%BD%D1%81/ https://electrogarage.wordpress.com/ https://electrogarage.wordpress.com/2015/09/18/%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F-%D1%8D%D0%BA%D1%81%D0%BF%D0%BB%D1%83%D0%B0%D1%82%D0%B0%D1%86%D0%B8%D1%8F-%D1%8D%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%B8%D0%BD%D1%81%D1%82/ https://electroprofblog.wordpress.com/ https://electroprofblog.wordpress.com/2015/09/18/%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5-%D1%85%D1%80%D0%B0%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D1%8D%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%B8%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BC%D0%B5/ https://benzopilablog.wordpress.com/ https://benzopilablog.wordpress.com/2015/09/14/%D0%B1%D0%B5%D0%BD%D0%B7%D0%BE%D0%BF%D0%B8%D0%BB%D0%B0-%D0%BA%D1%83%D0%BF%D0%B8%D1%82%D1%8C/ https://benzopilablog.wordpress.com/2015/09/14/%D0%B1%D0%B5%D0%BD%D0%B7%D0%BE%D0%B3%D0%B5%D0%BD%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%8B-%D0%BC%D0%BE%D1%81%D0%BA%D0%B2%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%/ http://benzogenerator-moskow.weebly.com/ http://instr-blog.soup.io/ http://instr-blog.soup.io/post/618108776/ http://instr-blog.soup.io/post/618105561/ http://instr-blog.soup.io/post/618110788/ http://benzogeneretor.beep.com/ tvntvzobam http://www.stockcity2000.at/forum/viewtopic.php?f=20&t=30610 http://metin2crown.info/Forum/index.php?topic=560655.new#new http://smf.demo.sur.ly/index.php?topic=53.new#new http://www.nzclouds.com/bbs/forum.php?mod=viewthread&tid=40069&extra= Название: Re: Не отображается интерфейс диалога QDialog Отправлено: Fregloin от Сентября 23, 2015, 14:33 еще смотрите в сторону QProgressDialog. Он как раз для таких задач!
Название: Re: Не отображается интерфейс диалога QDialog Отправлено: Racheengel от Сентября 23, 2015, 15:04 +1 for QProgressDialog
|