MFC之半透明控件
来源:互联网 发布:解数独软件 编辑:程序博客网 时间:2024/05/29 04:36
半透明控件的实现原理:
创建一个临时DC,发消息给父控件告知其绘制其内容于临时DC上,然后将自己相对于父控件的那块区域的绘制COPY到自己的PaintDC上,此后再做其他绘制。
代码思路如下:
Child:
{
CPaintDC dc;
CMemDC mdc;
//创建临时DC
CBitmap bitmap;
CDC cdc;
::SendMessage(hParent, WM_COPY_PARENT, cdc, 0); //发消息通知父控件将其内容绘制在cdc上
paint cdc to mdc
do your paint on mdc
}
Parent:
void DoPaint(HDC hdc, CRect rc);
void OnPaint()
{
DoPaint();
}
LRESULT OnCopyParent(WPARAM w, LPARAM p)
{
HDC hdc = w;
DoPaint(w);
return 0;
}
源码地址:点击打开链接
0 0
- MFC之半透明控件
- mfc中如何实现窗体半透明 但是控件不透明
- MFC使用API函数GdiAlphaBlend绘制半透明控件
- Winform----自定义控件之背景半透明遮罩加载控件
- MFC之控件扩展
- MFC之ComboBox控件
- mfc控件之ListBox
- MFC控件之TreeCtrl
- MFC控件之listctrl
- MFC之控件
- MFC控件之CControlBar
- MFC控件之CListCtrl
- MFC控件之ListBox
- MFC之ComboBox控件
- MFC之静态控件
- MFC控件之CMonthCalCtrl
- MFC控件之进度条
- MFC之ListControl控件
- 用指针逆序一个数组
- AndroidStudio导入libary源码
- elasticsearch java api demo
- 如何使用Unity制作虚拟导览(三)
- 关于android屏幕适配的问题(drawable-xxxxxxxx,dp,sp,px等等),偶尔看到了android源码,关于dpi的区分的值
- MFC之半透明控件
- 五大算法思想
- 浅尝Unity 3D的Asset Bundle知识(三)-----导入资源篇
- Linux下的正斜杠"/"和"\"的区别
- getopt函数
- Git Ignore file
- 组播编程
- c++小游戏代码
- 幽灵按钮