两个问题,
1. SetBkColor()的正确调用API是
SetBkColor(HDC, COLORREF);
如果是MFC的CDC成员函数,调用是
CDC::SetBkColor(COLORREF);
需要设置的颜色是参数
2. SetBkColor并不是用来改变背景颜色,而是设置文字输出的背景色
如果希望改变窗口的背景色,应该在窗口的类结构(WNDCLASS)中,修改背景刷子。
改变单文档窗口背景颜色。
找到CView的继承的类
增加创建消息
增加下列代码。
int CWndView::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CView::OnCreate(lpCreateStruct) == -1)
return -1;
static CBrush brush;
brush.CreateSolidBrush(RGB(255,0,0));//创建画刷
SetClassLong(this->m_hWnd, GCL_HBRBACKGROUND,(LONG)brush.m_hObject);//设置画刷
return 0;
}
SetBkColor(COLORREF 参数)
不是返回值
你是要设置,不是获取。