Приветствую
Проблема следующая:
Есть Thread созданный с помощью AfxBeginThread
Он должен в соответствии с ситуацией выводить кнопки соответствующих цветов и размеров.
В функцию передаем указатель на мой диалог при запуске.
Пытаюсь по указателю создать кнопку. Система утверждает, что кнопка создана и у нее есть hWnd
но при этом я ее не вижу на экране (свойства ставил WS_VISIBLE и WS_CHILD).
Подскажите как с этим справиться ...
Здравствуйте Vasiliy_Krasnokutsky, Вы писали:
VK>но при этом я ее не вижу на экране (свойства ставил WS_VISIBLE и WS_CHILD). VK>Подскажите как с этим справиться ...
Если ты создаешь окно в потоке ( а кнопка — это окно), то окно принадлежит этому потоку и сообщения для окна должны обрабатываться очередью сообщений этого потока. Лучше всего иметь один UI поток и несколько рабочих потоков и все окна создавать только из UI потока (того, в котором есть очередь сообщений)
Здравствуйте Ivan, Вы писали:
I>Если ты создаешь окно в потоке ( а кнопка — это окно), то окно принадлежит этому потоку и сообщения для окна должны обрабатываться очередью сообщений этого потока. Лучше всего иметь один UI поток и несколько рабочих потоков и все окна создавать только из UI потока (того, в котором есть очередь сообщений)
Для большей понятности добавлю:
Поскольку твой второй поток не обробатывает сообщения, ничего и не отрисоввывается. Можно создовать кнопки в основном потоке по какому-нибудь сообщению. А это сообщение будет посылать рабочий поток.