透明的CheckBox的代码

透明的CheckBox,基类是CButton...
主要代码如下
OnPaint()
{
 CPaintDC dc(this); // device context for painting
   
    // TODO: Add your message handler code here
   
    CRect rect;
    GetClientRect(&rect);

    CRect BoxRect;
    BoxRect=rect;
    BoxRect.right =BoxRect.left +15;
    dc.DrawFrameControl(BoxRect,DFC_BUTTON,DFCS_BUTTONCHECK|GetCheck()?DFCS_CHECKED :0);

    CFont   myFont; 
    myFont.CreatePointFont (120,_T("宋体"));
    CFont   *pOldFont=(CFont   *)dc.SelectObject   (&myFont); 
    dc.SetBkMode(TRANSPARENT);  
   
    CString StrWndText;
    GetWindowText(StrWndText);

    rect.OffsetRect (20,0);
    dc.DrawText(StrWndText,   rect,   DT_LEFT|DT_VCENTER|DT_SINGLELINE);  
    dc.SelectObject   (pOldFont); 
    myFont.DeleteObject   (); 
    // Do not call CButton::OnPaint() for painting messages
}

posted on 2007-11-23 13:21 李亚 阅读(2280) 评论(2)  编辑 收藏 引用 所属分类: MFC/VC

评论

# re: 透明的CheckBox的代码[未登录] 2010-10-22 13:46 NoName

查了半天百度,
下午google一下就找到了你.....  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2007年11月>
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678

导航

统计

公告

这世界并不会在意你的自尊,这世界指望你在自我感觉良好之前先要有所成就!

常用链接

留言簿(3)

随笔分类(32)

随笔档案(32)

相册

最新随笔

搜索

最新评论

阅读排行榜

评论排行榜