让VC窗口轻而易举变漂亮
来源:互联网 发布:linux 查看物理网卡 编辑:程序博客网 时间:2024/04/29 08:31
大家请看这张图:
其实这张图已经很直观的表达了窗口内部的布局,有了这张图你觉得美化窗口还难吗?想怎么好看就可以怎么好看….<注:这张图是从网上搜索得来,十分感谢此作者,为我们提供了方便,在这里我只是拿这张图做一下参考>
//取得标题栏的位置
rtTitle.left = 6;
rtTitle.top = 0;
rtTitle.right = rtWnd.right - rtWnd.left - 6;
rtTitle.bottom = 30;
//计算最小化按钮的位置
m_rtButtMin.left = rtWnd.right - rtWnd.left - 66;
m_rtButtMin.top= 0;
m_rtButtMin.right = rtWnd.right - rtWnd.left - 46;
m_rtButtMin.bottom = 30;
//计算最大化按钮的位置
m_rtButtMax.left = rtWnd.right - rtWnd.left - 46;
m_rtButtMax.top = 0;
m_rtButtMax.right = rtWnd.right - rtWnd.left - 26;
m_rtButtMax.bottom = 30;
//计算关闭按钮的位置
m_rtButtExit.left = rtWnd.right - rtWnd.left - 26;
m_rtButtExit.top = 0;
m_rtButtExit.right = rtWnd.right - rtWnd.left-6;
m_rtButtExit.bottom = 30;
有了它们的位置美化它们就容易了:
//准备画图
CBitmap* pBitmap = new CBitmap;
BITMAP BmpInfo;
CBitmap* pOldBitmap;
CDC* pDisplayMemDC=new CDC;
pDisplayMemDC->CreateCompatibleDC(pDC);
//重画标题栏
pBitmap->LoadBitmap(IDB_TITLE_TOP);
pBitmap->GetBitmap(&BmpInfo);
pOldBitmap=(CBitmap*)pDisplayMemDC->SelectObject(pBitmap);
pDC->StretchBlt(6,0, rtWnd.right-rtWnd.left-12,
30,
pDisplayMemDC, 0, 0,
BmpInfo.bmWidth,
BmpInfo.bmHeight,SRCCOPY);
pDisplayMemDC->SelectObject(pOldBitmap);
pBitmap->DeleteObject();
//写上标题
WriteCaption(m_CaptionColor,m_Caption);
//重画两个标题栏两边的小边框
pBitmap->LoadBitmap(IDB_DOWN);
pBitmap->GetBitmap(&BmpInfo);
pOldBitmap=(CBitmap*)pDisplayMemDC->SelectObject(pBitmap);
//左边的
pDC->StretchBlt(0,0,6,30,
pDisplayMemDC,0, 0,
BmpInfo.bmWidth,
BmpInfo.bmHeight,
SRCCOPY);
//右边的
pDC->StretchBlt(rtWnd.right-rtWnd.left-6,0,6,30,
pDisplayMemDC,0,0,
BmpInfo.bmWidth,
BmpInfo.bmHeight,
SRCCOPY);
pDisplayMemDC->SelectObject(pOldBitmap);
pBitmap->DeleteObject();
//重画功能button
pBitmap->LoadBitmap(IDB_NORMAL);
pBitmap->GetBitmap(&BmpInfo);
pOldBitmap=(CBitmap*)pDisplayMemDC->SelectObject(pBitmap);
pDC->StretchBlt(m_rtButtMin.left,
m_rtButtMin.top+4,
60, 21, pDisplayMemDC,
0, 0, BmpInfo.bmWidth,
BmpInfo.bmHeight,SRCCOPY);
pDisplayMemDC->SelectObject(pOldBitmap);
pBitmap->DeleteObject();
这样,我们想在窗口的什么位置上贴什么我们就可以很容易的做到。
转自http://c.chinaitlab.com/vc/916576_2.html
- 让VC窗口轻而易举变漂亮
- 让窗口轻而易举变漂亮
- 【界面】VC 6 MFC让窗口轻而易举变漂亮
- 让你的blog外观变漂亮
- 怀孕期间可以让孩子变漂亮的办法
- 如何让你的电脑变的最漂亮?
- 怀孕期间可以让孩子变漂亮的办法
- VC如何让窗口半透明
- vc 让菜单变灰的方法
- vc-让一个窗口默默地启动(vc)
- 让你的软件界面更漂亮 [VC++]
- 让你的软件界面更漂亮 (VC)
- VC里让输出窗口暂停
- 让一个窗口默默地启动(vc)
- 让一个窗口默默地启动(vc)
- VC隐藏任务栏,让窗口全屏
- Win32中如何让窗口大小不可变
- 奇迹私服ip 四项运动让乳房变漂亮_39健康网_女性
- 窥探 kernel --- copy_process
- Oracle补丁集的补丁号Patch ID/Number速查
- message from server: "Host 'xxx' is not allowed to co
- 【收集】td中内容自动换行
- 文件IO与标准IO库
- 让VC窗口轻而易举变漂亮
- 领域模型
- 创建动画窗口
- 【小蒙淘金】4.9金评-黄金白银行情分析及部分操作建议
- Android调试错误:Unable to open sync connection!
- 关于sql注入问题
- struts之插件convention的使用简介。
- 如何为SharePoint 2010中配置Performance Point Service
- CPU Affinity Howto