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 或搜索 蓝蚂蚁工作室