不规则对话框的又一实现
作者:
代码运行效果图如下:

此不规则对话框的实现应用了一个重要的位图对话框类——CBitmapDialog ,通过灵活运用,可以实现任意形状的对话框。

一、CBitmapDialog 简介:

CBitmapDialog从CDialog派生并封装了根据位图形成任意形状对话框的功能,类的实现也非常简单,主要是一些加载位图、设置透明色等操作,最关键的函数是MakeWindowRgn, 它根据位图生成所需的区域对象, 然后调用SetWindowRgn将窗口设置成需要的形状,MakeWindowRgn函数的具体代码请参考本文配套的代码。

二、CBitmapDialog类的使用

下面介绍CBitmapDialog类的使用过程:
1. 运行VC,建立基于对话框的应用程序 BitmapDlg。设置对话框的属性,去掉边框和标题栏。
2. 插入位图。(在插入->资源->选 Bitmap)
3. 在CBitmapDialogDlg 的BOOL CBmpDlgDlg::OnInitDialog() 中添加如下代码:

LoadBitmap(IDB_BITMAP1);//加载位图
SetTransparent (TRUE);
SetTransColor (RGB(0,0,0));//去掉形状的颜色设置
SetStaticTransparent (TRUE);
SetClickAnywhereMove (TRUE);//鼠标是否能拖动窗体。

4. 将 CBitmapDialogDlg 的基类改为 CBitmapDialog,并将更改相应的消息映射。

请大家都来试一试吧!

不规则对话框的又一实现相关推荐

  1. vc 中对对话框的几种操作

    注:以下代码以一个名为CTest6Dlg的对话框类为例 ------------------------------------------------------------------------ ...

  2. Dialog Windows 使用技巧

    作者:lixiaosan 日期:04/11/2006 文章不断更新中,请访问 这里 注:以下代码以一个名为CTest6Dlg的对话框类为例 1. 在任务栏隐藏对话框 ModifyStyleEx(WS_ ...

  3. 前端不规则图像点击_css实现不规则图形的阴影(如对话框)

    在日常开发中会使用带箭头的弹出对话框,有时为了美观或者突出,会添加一个阴影.由于图形不规则且可能是由多个元素拼接而成的,这样box-shadow属性可能不能满足需求.这里推荐一个类似的属性,filte ...

  4. css 对话框阴影,科技常识:css实现不规则图形的阴影(如对话框)

    今天小编跟大家讲解下有关css实现不规则图形的阴影(如对话框) ,相信小伙伴们对这个话题应该有所关注吧,小编也收集到了有关css实现不规则图形的阴影(如对话框) 的相关资料,希望小伙伴们看了有所帮助. ...

  5. 事件过滤器及不规则窗体

    事件过滤器及不规则窗体 文章目录 事件过滤器及不规则窗体 一.事件过滤器 二.不规则窗体 一.事件过滤器 有时候, 对象需要查看. 甚至要拦截发送到另外对象的事件. 例如, 对话框可能 想要拦截按键事 ...

  6. qtmessagebox对话框里自定义按钮文本_按钮你可以这样设计

    作者:Michal Malewicz 译者:Matrix 审稿:afang 原文链接: https://uxdesign.cc/design-better-buttons-a5c90a113280 文 ...

  7. Cadence 16 ( Allegro PCB ) 使用 Shape Symbol 制作不规则焊盘

    ###本文copy 陆平 Be water, my friends##http://www.cnblogs.com/ohio/p/3912495.html##在此谢过! 在进行 PCB 或者 Pack ...

  8. QT5开发及实例学习之九基本对话框(二)

    文章目录 前言 一.工具盒类 二.进度条 三.调色板与电子钟 1.QPalette类 2.QTime类 四.可扩展对话框 五.不规则窗体 六.程序启动画面(QSplashScreen) 前言   本章 ...

  9. revit建模插件:不规则幕墙如何在Revit中创建呢?

    revit建模插件:不规则幕墙如何在Revit中创建呢? Revit中很容易创建规则的幕墙,但是很多建筑的幕墙是不规则的,那么如图-1所示的不规则幕墙如何在Revit中创建呢?revit建模插件为你解 ...

最新文章

  1. jdbc与hibernate的优缺点比较
  2. numpy.triu详解
  3. 揭秘重度MMORPG手游后台性能优化方案
  4. Android—ActivityThread与Handler
  5. NPOI自定义单元格背景颜色
  6. Bailian2758 菲波那契数列(2)【递推】
  7. splice slice
  8. xml文件和DataTable之间相互转换
  9. 4.Jenkins 2 权威指南 --- 通知与报告
  10. python visa模块_python – Mac OS X上的NI VISA pyVisa(Snow Leopard)
  11. mysql checking permissions 优化_mysql 查询优化 ~ 善用profie利器
  12. 创建Person接口(即“人”),它有setData()和getData()方法对“人”属性name、sex和birthday赋值和获得这些属性组成的字符串信息创建类Student实现Person接口
  13. Java实战之管家婆记账系统(24)——项目总结
  14. 用 Bootstrap 进行参数估计
  15. javaSE (十六)Randon、System类的方法(生成随机数、主动垃圾回收、终止jvm、对程序进行记时、System自带的复制数组的方法)
  16. js取整,保留小数位数、四舍五入、科学记数法及去掉数字末尾多余的0
  17. 卓有成效的管理者——第5章 要事优先
  18. 简单使用SAXReader解析xml数据
  19. Linux文件操作命令及磁盘分区与文件系统
  20. C++ 头文件的引用

热门文章

  1. 都是写需求,高手和菜鸟为何差别这么大?
  2. 面试中有这些特征的公司可以pass了
  3. 关于计算机网络的英语演讲稿,上网利弊的英语演讲稿范文
  4. python装饰器函数执行后日志_一篇文章搞懂Python装饰器所有用法
  5. 《大数据》2020年第3期目次摘要
  6. 安徽省智慧政务新模式及典型应用
  7. 作者:黄伟(1964-),男,博士,西安交通大学管理学院教授、博士生导师、院长...
  8. 【2016年第5期】多“源”异“构”培养大数据创新型人才
  9. 作者:周园春(1975-),男,博士,中国科学院计算机网络信息中心研究员、博士生导师。...
  10. 台阶问题(洛谷P1192题题解,Java语言描述)