动态创建CEdit

1. 动态创建Cedit与动态创建CStatic类似,缺省字体都很粗,可以使用 

     LOGFONT lf;


        ::GetObject((HFONT)GetStockObject(DEFAULT_GUI_FONT),sizeof(lf),&lf);
        m_font.CreateFontIndirect(&lf);
        

        m_editContent.SetFont(&m_font);

2. 动态创建的CEdit背景默认是白色的

如果要改变其背景,可以响应父窗口对话框的OnCtlColor函数,在里面设置画刷改变背景色

    if (pWnd->GetDlgCtrlID() == CEDITID)
    {
        pDC->SetBkMode(TRANSPARENT);

        HBRUSH hbr = (HBRUSH)GetStockObject(NULL_BRUSH);
        return hbr;
    }

其中CEDITID定义为 #define CEDITID 8080    // 动态创建的CEdit的ID

当然创建CEdit的时候,ID也要指定为CEDITID

但是注意: 由于NULL_BRUSH会导致窗口不重绘,在滚动条滚动的时候,显示内容就逐渐混乱了,所以此处不能用NULL_BRUSH,当然可以用其它BRUSH.

如果要使用对话框的背景颜色,可以用    HBRUSH hbr = (HBRUSH)CreateSolidBrush(RGB(238,238,244)); 其中RGB(238,238,244)是用QQ截图看的分辨率,嘿嘿



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值