qq_29670983 2015-08-20 01:16 采纳率: 0%
浏览 1906

请教一个MFC填充背景色的问题

BOOL C2Dlg::OnEraseBkgnd(CDC* pDC)
{
GetWindowRect(rect);

pDC->SelectObject(fff);

pDC->Rectangle(rect);
return CDialogEx::OnEraseBkgnd(pDC);

}
我想一调试程序就背景显示指定的颜色,用CCLIENTDC可以,但是用这个函数传进来的
PDC好像不行,请问下是为什么呀?CBRUSH fff已经在初始化函数中定义了。

  • 写回答

3条回答 默认 最新

  • qq_19242821 2015-08-20 02:02
    关注

    试下这个:
    GetWindowRect(rect);
    //转成屏幕坐标
    ClientToScreen(rect);

    CWnd* pWnd = pDC->GetWindow();

    pWnd->ScreenToClient(rect);

    pDC->SelectObject(fff);

    pDC->Rectangle(rect);
    return CDialogEx::OnEraseBkgnd(pDC);

    评论

报告相同问题?

悬赏问题

  • ¥15 求TYPCE母转母转接头24PIN线路板图
  • ¥100 国外网络搭建,有偿交流
  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型