DuiVision的对话框类是CDlgBase。
代码中假设须要创建一个对话框,一般建议使用DuiSystem类中封装的若干对话框相关的函数来操作,包括创建对话框、删除对话框、依据对话框名获取对话框指针、显示通用对话框。

对话框的属性例如以下:

属性名 类型 说明
width 数字 窗体宽度
height 数字 窗体高度
resize 0|1 1表示窗体能够改变大小
frame 字符串 窗体的frame层图片。frame层是一个可选的半透明Alpha图片层。一般设置的这个图片是用于和背景图片进行Alpha混合,这一层的图片中每一个像素都包括了自身颜色和透明度属性。通过透明度属性能够将背景图片进行半透明处理。默认仅仅有主窗体设置了这个frame层图片,而且默认的frame图片是一个透明度渐变的PNG图片,从顶端的100%透明究竟端的全然不透明
framesize 数字 窗体的frame层图片的边框宽度,非九宫格方式有效
width-lt 数字 窗体的frame层图片的九宫格左上角位置距离边框的宽度
height-lt 数字 窗体的frame层图片的九宫格左上角位置距离边框的高度
width-rb 数字 窗体的frame层图片的九宫格右下角位置距离边框的宽度
height-rb 数字 窗体的frame层图片的九宫格右下角位置距离边框的高度
bkimg 字符串 窗体的背景图片。假设指定了就使用指定的背景图片。否则使用全局设置的背景图片
crbk 颜色 窗体的背景颜色,假设未指定背景图片,但指定了背景颜色,就使用指定的背景颜色。否则使用全局设置的背景图片
appwin 0|1 此窗体是否会显示在Windows任务栏中显示,见以下的截图说明
translucent 数字 窗体的总体透明度,取值范围是1-255,1表示全透明,255表示不透明
crtransparent 颜色 设置窗体的背景透明颜色,RGB格式
shadow-size 数字 窗体的算法阴影的宽度
img-shadow 图片 窗体的图片阴影使用的图片
shadow-wlt 数字 窗体的阴影层图片的九宫格左上角位置距离边框的宽度
shadow-hlt 数字 窗体的阴影层图片的九宫格左上角位置距离边框的高度
shadow-wrb 数字 窗体的阴影层图片的九宫格右下角位置距离边框的宽度
shadow-hrb 数字 窗体的阴影层图片的九宫格右下角位置距离边框的高度
topmost 0|1 窗体是否显示在全部窗体的最前面(整个桌面范围内)

说明:
1) 九宫格方式frame层的说明:对于复杂的背景frame层图片。其全部边框宽度并非固定的。但一般都能够用九宫格方式来切分。就是把背景frame图片横向、纵向各用两条线切分,一共切分成九部分,应用时候四个角的图片大小是依照原始大小应用到窗体中的,其余几部分都会进行拉伸,对于这样的方式,仅仅要描写叙述出九宫格的左上角和右下角坐标位置就能够,相应的就是width-lt、height-lt、width-rb、height-rb这4个属性。

2)appwin属性的说明:以下截图中右边的任务栏窗体就是由于此窗体设置为appwin属性为1才会在任务栏中单独显示出来:

3)窗体阴影的说明:窗体支持两种方式的阴影,一种是图片阴影。一种是算法阴影。

图片阴影是指定一个九宫格方式的阴影图片,相似下图的图片,须要指定九宫格的坐标,窗体绘制时候会将阴影图片作为一个单独的层画在窗体的下方外围区域。

算法阴影是直接通过算法画一个阴影层,须要指定阴影的宽度。

假设窗体属性中设置了图片阴影的图片。则优先使用图片阴影方式画阴影层,假设没有指定阴影图片,但设置了阴影宽度。则使用算法阴影方式画阴影层。假设图片和阴影宽度都没有指定。则不会画阴影层。


加了阴影的窗体效果例如以下:

CDlgBase的经常使用函数例如以下:

函数 是否虚函数 说明
SetXmlFile 设置对话框载入的xml文件
GetControl 依据ID或name获取相应的控件指针
DoOK 对话框的确定
DoCancel 对话框的取消
DoClose 对话框的关闭
SetControlVisible 设置指定控件的可见性
SetControlDisable 设置指定控件是否禁用
OpenDlgPopup 打开一个弹出框
CloseDlgPopup 关闭弹出框

DuiVision开源码下载地址(github):https://github.com/blueantst/DuiVision
蓝蚂蚁工作室主页:http://www.blueantstudio.net
DuiVision QQ群:325880743
微信公众号:blueantstudio 或搜索 蓝蚂蚁工作室

转载于:https://www.cnblogs.com/mengfanrong/p/5332826.html

DuiVision开发教程(17)-对话框相关推荐

  1. DuiVision开发教程(2)-如何写一个简单的界面程序

    基于DuiVision界面库开发的界面程序主要包括如下几部分内容: 1.资源定义,包括图片资源.各个窗口界面的xml定义文件 2.事件处理类代码,用于处理界面响应消息 3.其他业务逻辑代码 下面举例说 ...

  2. DuiVision开发教程(19)-菜单

    DuiVision菜单类是CDuiMenu.有两种显示的位置,一种是在窗体顶部某个button点击后能够下拉一个菜单,还有一种是托盘图标的右键菜单. 窗体中的菜单定义方式是xml文件里设置某个butt ...

  3. DuiVision开发教程(7)-系统预定义控件、动作和事件

    DuiVision库中预定义了一些控件名.动作和事件,这些定义可以参考duiid.h. 对于预定义的控件名,只要某个控件定义的名字是这个名字,就会被看做为特定的控件,系统会对其事件作出响应,预定义控件 ...

  4. DuiVision开发教程(16)-区域控件

    DuiVision的area控件(类名是CArea)可以设置区域的渐变透明度,不能响应鼠标事件,此控件的原理是画一个填充的透明度渐变矩形区域,透明度从矩形区域顶部究竟部均匀渐变. 控件的属性包含: 属 ...

  5. DuiVision开发教程(12)-任务类和任务队列

    基于MFC的界面程序中,如果存在多线程,一般情况下只有主线程(界面线程)可以调用Windows窗口相关的函数,否则如果在其他线程中调用了界面函数,很可能会造成异常.为此DuiVision界面库提供了一 ...

  6. DuiVision开发教程(3)-XML资源文件定义介绍

    全局资源定义-resource.xml 基于DuiVision界面库的程序,需要有一个默认的资源定义XML文件,此文件默认的位置是exe文件所在路径下的xml\resource.xml文件,如果使用了 ...

  7. DuiVision开发教程(14)-DUI控件基础类

    DuiVision所有控件的基类是CControlBase类. CControlBase的属性如下表: 属性名 类型 说明 show 1|0 控件是否可见 disable 1|0 控件是否被禁用 po ...

  8. DuiVision开发教程(1)-创建DuiVision工程

    DuiVision的源代码工程有两种类型:主程序和插件工程,可以通过人工方式创建DuiVision工程,也可以通过Visual Studio向导自动创建工程. 人工创建主程序的方法 1.创建一个基于D ...

  9. DuiVision开发教程(15)-DUI文本控制基础类

    CControlBaseFont类是DuiVision支持所有基类的控件的文本属性. 此控件例如属性列表,下面: 物业名称 类型 说明 title 字符串 控件的显示标题 font 字体 控件的字体, ...

最新文章

  1. mongoengine中queryset触发网络访问机制剖析
  2. 8、REVOKE:删除用户权限
  3. 看直播拿证书 | 12 天,0 基础晋级 Serverless 高手
  4. A. Regular Bracket Sequences
  5. java中布局管理器的作用_使用Java布局管理器的目的是什么?
  6. Web服务软件工厂(WSSF)演练之三:创建服务契约和实现方法
  7. 克罗谈投资策略01_期货交易中的墨菲法则
  8. cpoint 两个点距离_Wasserstein距离学习笔记
  9. 数据结构11——KMP
  10. ASCLL码对照表01(控制字符)
  11. 如何快速取消大量的合并单元格并向下填充数据
  12. Messenger:使用消息的跨进程通信 (Message.replyTo()的使用)
  13. l10n php download,在PHP,WordPress,phpMyAdmin,C,i18n,L10n等双下划线?
  14. JavaScript 和读取服务器cookie
  15. 拼音转换成汉字html,汉字转成拼音-用HTML实现
  16. 彩色图像转灰度图像原理python
  17. 山东师范大学计算机考研资料汇总
  18. spark-调优(代码层面)
  19. c++ nth_element()函数
  20. MyBatis配置文件,节点顺序

热门文章

  1. DBCO-PEG-Casein/Ovalbumin/Lectins点击化学DBCO偶联络蛋白/卵清蛋白/凝集素
  2. 互联网装比大法!!!
  3. C语言你不得不知道的小知识
  4. 【Python数学建模常用算法代码(二)之BP神经网络】
  5. 【Python】规范脚本Log输出,将log输出到控制台同时写入文件中
  6. 为什么要有副业?为什么需要一份副业?怎么选择副业?
  7. HTTPie安装使用
  8. 第八章 固若金汤:网站的安全架构(待续)
  9. 我的世界饮水系统服务器,我的世界1.7.10服务器似水流年
  10. 抢跑Serverless DB,腾讯云打的什么算盘?