QThread: изменение элементов QDialog, Красивое решение. |
Здравствуйте, гость ( Вход | Регистрация )
QThread: изменение элементов QDialog, Красивое решение. |
canavar |
29.3.2009, 17:40
Сообщение
#1
|
Студент Группа: Новичок Сообщений: 14 Регистрация: 26.3.2009 Пользователь №: 643 Спасибо сказали: 0 раз(а) Репутация: 0 |
Всем доброго вечера.
Есть такая проблема: Существует окно QDialog. При загрузке этого окна происходят довольно тяжелые вычисления и, как следствие, окно замораживается. Элементов на форме 6 штук ( два QTableWidget, четыре QListWidget). Хотелось бы вынести все вычисления в отдельный поток. Но я не понимаю, как сделать так, чтобы второй поток смог изменять Widget'ы на форме QDialog. Можно конечно в поток передавать указатели на Widget'ы, но у меня есть подозрение, что существует более красивое решение... Что вы можете сказать по этому поводу? Заранее спасибо. |
|
|
igor_bogomolov |
29.3.2009, 20:03
Сообщение
#2
|
Профессионал Группа: Сомодератор Сообщений: 1215 Регистрация: 22.3.2009 Из: Саратов Пользователь №: 630 Спасибо сказали: 235 раз(а) Репутация: 29 |
ИМХО.
Я так понимаю, что это от реализации программы зависит. Чтобы имитировать сигнал никаких указателей не нужно. Вот уже где распологается коннект, это другое дело. Все равно экземпляры класса, наследовонного от QThread, будут создаваться в "Gui_class", так и коннекты между ними лучше делять тамже. connect(&thread, SIGNAL(thread_signal()), this, SLOT(gui_slot())); Сообщение отредактировал igor_bogomolov - 29.3.2009, 20:05 |
|
|
Текстовая версия | Сейчас: 29.3.2024, 17:16 |