DuiVision开发教程(17)-对话框
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 或搜索 蓝蚂蚁工作室
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i ').text(i));
};
$numbering.fadeIn(1700);
});
});
DuiVision开发教程(17)-对话框的更多相关文章
- DuiVision开发教程(18)-弹出窗
DuiVision的弹出窗体类CDlgPopup,是菜单.下拉列表等控件的父类,也能够单独使用,用于创建弹出窗体.弹出窗体默认是非激活状态下自己主动关闭,比如鼠标点击到弹出窗体外面的区域,弹出窗体就会 ...
- DuiVision开发教程(19)-菜单
DuiVision菜单类是CDuiMenu.有两种显示的位置,一种是在窗体顶部某个button点击后能够下拉一个菜单,还有一种是托盘图标的右键菜单. 窗体中的菜单定义方式是xml文件里设置某个butt ...
- DuiVision开发教程(15)-DUI文本控制基础类
CControlBaseFont类是DuiVision支持所有基类的控件的文本属性. 此控件例如属性列表,下面: 物业名称 类型 说明 title 字符串 控件的显示标题 font 字体 控件的字体, ...
- Android OpenGL ES 开发教程 从入门到精通
感谢,摘自:http://blog.csdn.net/mapdigit/article/details/7526556 Android OpenGL ES 简明开发教程 Android OpenGL ...
- [置顶] Kendo UI开发教程: Kendo UI 示例及总结
前面基本介绍完Kendo UI开发的基本概念和开发步骤,Kendo UI的示例网站为http://demos.kendoui.com/ ,包含了三个部分 Web DemoMobile DemoData ...
- iOS 11开发教程(五)iOS11模拟器介绍二
iOS 11开发教程(五)iOS11模拟器介绍二 3.iOS11模拟器中设置语言 对于不同国家的人来说,使用到的语言是不一样的.一般情况下iOS11模拟器默认使用的English(英语).对于英文不好 ...
- iOS 9应用开发教程之创建iOS 9项目与模拟器介绍
iOS 9应用开发教程之创建iOS 9项目与模拟器介绍 编写第一个iOS 9应用 本节将以一个iOS 9应用程序为例,为开发者讲解如何使用Xcode 7.0去创建项目,以及iOS模拟器的一些功能.编辑 ...
- Unity 2D游戏开发教程之游戏中精灵的跳跃状态
Unity 2D游戏开发教程之游戏中精灵的跳跃状态 精灵的跳跃状态 为了让游戏中的精灵有更大的活动范围,上一节为游戏场景添加了多个地面,于是精灵可以从高的地面移动到低的地面处,如图2-14所示.但是却 ...
- 推荐20个很有帮助的 Web 前端开发教程
在平常的搜索中,我碰到过很多有趣的信息,应用程序和文档,我把它们整理在下面这个列表.这是收藏的遇到的有用内容的一个伟大的方式,可以在你需要的时候方便查阅.相信你会在这个列表中发现对你很有用的资料. 您 ...
随机推荐
- Vim学习总结
Vim 目前还没感觉到比在Mac下使用Sublime Text高效到哪 安装 sudo apt-get install vim 常用配置 在Linux环境下Vim的初始化配置文件为.vimrc,通常有 ...
- Redis,Memcache,mongoDB的区别
从以下几个维度,对redis.memcache.mongoDB 做了对比,欢迎拍砖 1.性能 都比较高,性能对我们来说应该都不是瓶颈 总体来讲,TPS方面redis和memcache差不多,要大于mo ...
- Spring的事务传播属性,数据库的隔离级别
Spring事务的传播属性 REQUIRED 业务方法需要在一个事务中运行,如果方法运行时,已处在一个事务中,那么就加入该事务,否则自己创建一个新的事务.这是spring默认的传播行为. SUPPO ...
- 关于ThinkPHP中Session不能夸模块/控制器使用的问题-网上的答案我做个补充
1,确保c:/windows目录下有php.ini文件2,修改php.ini中的session.auto_start = 0 为 session.auto_start = 1 //设置自动开启ses ...
- 炮兵阵地(POJ 1185状压dp)
题意:n*m地图'H'能放'p'不能放,布兵的方格上下左右不能布兵,给你地图求最大布兵数 分析:关系到前两行,所以dp[i][j][k]第i行状态为j,i-1行状态为k时的最大布兵数, 先求出所有可行 ...
- Qt加载网页(加载浏览器插件)和制作托盘后台运行(南信大财务报账看号)
程序模块要添加QNetWork和QWebKit模块: nuistfinancevideo.h文件: #ifndef NUISTFINANCEVIDEO_H #define NUISTFINANCEVI ...
- Matlab中imshow()函数的使用
imread() 返回的图像类型是uint8类型, 这时用imshow显示图像的时候, imshow会认为输入矩阵的范围在0-255, 如果imshow的参数为double类型的,那么imshow认为 ...
- [Hive - LanguageManual] Hive Concurrency Model (待)
Hive Concurrency Model Hive Concurrency Model Use Cases Turn Off Concurrency Debugging Configuration ...
- C# 颜色转换
十六进制颜色与Color对象的互相转换[C#] C#十六进制颜色与Color对象的互相转换 把十六进制颜色转化为color对象ColorTranslator.FromHtml("#FF0 ...
- workstack windows to openstack
https://www.mirantis.com/openstack-portal/express-openstack-portal/migrating-from-vmware-for-windows ...