Re: Создание модального диалогового окна фоновом потоке
От: qaz77  
Дата: 25.05.20 14:27
Оценка: +2
Здравствуйте, Melamed, Вы писали:
M> Я создаю модальное диалоговое окно в фоновом потоке с помощью функции DialogBoxParam. Окно создается, и работает нормально, но можно переключится между модальными диалоговыми окнами, созданными в основном и в фоновом потоке, что не желательно.

Чтобы нельзя было переключаться, надо DialogBoxParam указать hwnd основного окна в качестве родителя. Родитель модального окна может быть даже в другом процессе.
Тут все равно будет два цикла обработки сообщений: в основном UI потоке и в модальном цикле в фоновом потоке, что на мой взгляд избыточно.

Лучшая реализация — послать SendMessage из фонового потока основному окну.
Это заблокирует фоновый поток до возврата из SendMessage, в вся работа с UI будет в основном потоке.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.