二、Windows控件与颜色
您可以在图9-1中看到,许多按钮的显示看起来并不正确。按键还好,但是其它按钮却带有一个本不应该在那里的一个矩形灰色背景。这是因为这些按钮本来是为对话框中的显示而设计的,而在Windows 98中,对话框有一个灰色的表面。我们的窗口有一个白色的表面,这是因为我们在WNDCLASS结构中就是这样定义的。
wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
我们已经这么做了,因为我们经常在显示区域中显示文字,而GDI使用在内定设备内容中定义的文字颜色和背景颜色,它们总是黑色和白色。为了使这些按钮更加美观一些,我们必须要改变显示区域的颜色使之和按钮的背景颜色一致,所以要以某种方法将按钮的背景颜色改为白色。
解决此问题的第一步,是理解Windows对「系统颜色」的使用。