读书人

一个hbrBackground的解释

发布时间: 2012-03-27 13:44:24 作者: rapoo

求助一个hbrBackground的解释
wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);
这里的HBRUSH是什么意思啊? 作用是什么啊?他的定义我没看懂啊
谢谢

[解决办法]
HBRUSH是个类型
这里是将GetStockObject返回值进行类型强转
详细参见MSDN或者上VC区问问看
[解决办法]
HBRUSH是什么类?

不是类,是画刷的句柄。
关于GDI的绘图知识,推荐参考侯捷的《Windows程式设计》

图形以目前装置内容中选择的画刷来填入。内定情况下,使用现有物件,这意味著图形内部将画为白色。Windows定义六种现有画刷:WHITE_BRUSH、LTGRAY_BRUSH、GRAY_BRUSH、DKGRAY_BRUSH、BLACK_BRUSH和NULL_BRUSH (也叫HOLLOW_BRUSH)。您可以将任何一种现有画刷选入您的装置内容中,就和您选择一种画笔一样。Windbws将HBRUSH定义为画刷的代号,所以可以先定义一个画刷代号变数:

HBRUSH hBrush ;
您可以通过呼叫GetStockObject来取得GRAY_BRUSH的代号:

hBrush = GetStockObject (GRAY_BRUSH) ;
摘自:
http://zhidao.baidu.com/question/266201527.html

所以:
wndclass.hbrBackground = (HBRUSH) GetStockObject (GRAY_BRUSH);//设置窗口背景画刷的句柄

读书人网 >C++

热点推荐