Рисуем окно только с границами - PullRequest
2 голосов
/ 27 марта 2010

Как я могу создать окно приложения, которое показывает только границы окна, но я не хочу показывать содержимое самого окна. Я имею в виду, что я хочу видеть остальную часть рабочего стола или другие окна через всю область моего окна. Не использовать прозрачные пленки. Просто нарисуйте границы.

Полагаю, это все равно, что обнаруживать сообщения WM_ERASEBKGND и WM_PAINT и ничего не делать в этих случаях, чтобы принудительно не рисовать в контенте, но я попытался, и окно все еще рисует белый фон.

Как я могу получить это?

Ответы [ 2 ]

0 голосов
/ 30 марта 2010

Является ли создание и применение региона (CreateRectRgn, SetWindowRgn) опцией для вас? Вы можете просто вырезать клиентскую зону. Подробнее см. Здесь

0 голосов
/ 28 марта 2010

Согласно моему пониманию,

Если вы работаете в приложении win32 или wince приложении.

При регистрации класса, т. Е. Регистр оконного класса.

If object of WNDCLASS is wc . Assign the value for wc.hbrbackground as follows:

wc.hbrBackground = (HBRUSH) GetStockObject (NULL_BRUSH);

Это будет работать, т. Е. Вы можете видеть вещи в фоновом окне. Но после этого он не очистит фоновое изображение окна от вашего текущего окна. Для этого вам нужно сделать что-то другое. Я надеюсь, что как только вы примените это, вы узнаете, что я хочу сказать, точно.

...