weixin_51945342
2022-01-14 16:37
采纳率: 0%
浏览 7

为什么SetBkColor在Debug下生效,Release下没有生效

1.消息响应
BEGIN_MESSAGE_MAP(CMyDlg, CDialogEx)
ON_WM_CTLCOLOR()
END_MESSAGE_MAP()

2.在OnInitDialog中设置画刷子
m_brushGreen.CreateSolidBrush(RGB(0,255,0));//画刷为绿色
3.重载OnCtlColor
HBRUSH CMyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);

// TODO:  Change any attributes of the DC here
if (pWnd->GetDlgCtrlID() == IDC_STATIC){ //为静态文本框控件
        //pDC->SetBkMode(TRANSPARENT);
        pDC->SetBkColor(RGB(0255,0));//背景色为绿色
        return m_brushGreen;
}
// TODO:  Return a different brush if the default is not desired
return hbr;

}
编译后Debug模式下生效,Release模式下不生效,什么原因?

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 有问必答小助手 2022-01-17 10:30

    你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


    本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


    因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题