kgg124 Ответов: 1

Проблема рисования с "showwindow".


Всем привет.

Я пытаюсь создать "ComboBox" с помощью "пользовательского элемента управления".

Он настроен с помощью элементов управления "кнопка" и "список".

Когда я нажимаю кнопку, чтобы показать "ListBox", проблема в том, что он рисует элементы управления там, где под "ListBox" произошло.

Код, на который нажата кнопка, выглядит следующим образом..
m_pwndLB- & gt;ShowWindow(SW_SHOW);
m_pwndLB-&ГТ;метода setfocus();

В этой ситуации переместите полосу прокрутки или выберите элемент, проблема исчезнет.

Итак, я хочу нарисовать "список" нормально, когда нажимаю на кнопку.

Пожалуйста, посоветуйте мне.

спасибо.

Что я уже пробовал:

Я сделал "ComboBox", используя пользовательский элемент управления, который настроен с помощью элементов управления "Button" и "ListBox".

1 Ответов

Рейтинг:
12

Richard MacCutchan

Вам нужно позвонить в UpdateWindow функции (окна)[^] сразу же после ShowWindow, для того чтобы получить окрашенный элемент управления(ы).


kgg124

Спасибо за ответ.
Вы имеете в виду вызов "UpdateWindow" в главном диалоговом окне?
Например,

m_pwndLB - > ShowWindow(SW_SHOW); //m_pwndLB-указатель LisBox.
GetParent ()- & gt;UpdateWindow();

Это хорошо работает! Спасибо! :)