PyQt4对话框(dialog类型介绍)
大多数的GUI应用至少有一个对话框,大多数GUI应用有一个main window,而且这个窗口带有许多个dialog。
传统的对话框之一是由于它的“智能”,这里可以将它们分为:dump、standard、smart,
这依赖于能识别多少应用程序的数据。这些分类将会影响创新并初始化对话框。除了依据智能分类外,对话框还可以依据形态(modality)分类。一个应用形态的对话框,一旦被调用,
它将作为能与用户进行交互的应用程序一部分。直到用户关闭对话框,它们在应用的其他部分将无法使用。一个窗口(window)形态的对话框,和应用心态的对话框工作方式类似,除了它不能和它的上级窗口交互外,
这些上级窗口包括:父级窗口、父级的父级窗口、顶级父级窗口、父级的兄弟窗口。
除了应用程序只有一个顶级窗口,应用形态和窗口形态的应用没有实际的差别。
当引用一个没有指定窗口类型的模块(modal)窗口时,窗口将默认为window形态。与模式对话框对应的是无模式(modeless)对话框。当一个无模式对话框被调用时,用户可以和对话框进行交互,
而且在应用程序的其他部分同样可以与该对话框进行交互。这对于如何设计代码是有影响的,
因为用户可能会影响程序状态在主窗口和无模式对话框中,因此这对另一方有影响。写对话框的另一重要的方面是如何处理验证。无论在哪里,可能都要尝试去选择合适的widget并且
设置它们的属性用来避免去写任何验证代码。例如,如果需要一个整型,可以选择一个QSpinBox并用它的
setRange()方法来约束用户接受的数值范围。可以调用应用于单个widget“widget-level”的验证;
数据库程序可以调用“field-level”验证。有时候需要比widget级别更进一步的验证,特别是存在相互关联时。
例如:一个剧院的预定系统可能有两个下拉框,一个用于选择楼层、另一个用于选择作为排。
如果底楼座位排设置为A-R,第一层作为排设置为M-T,那么狠明显,只有一些楼层和座位牌组合是有效的。
由于这类事件,必须执行"form-level"的验证;数据库应用程序经常叫作"record-level"验证。当一个验证发生时,与之相关的另一个验证也会被激发。理想情况下,一点也不想用户能够进入无效的数据,
但是有时候这种预防是相当困难的。将验证分为两大类:
post-mortem:当用户进行确认时,在这一点上发生的验证是哪一个
preventative:用户操作编辑widget时发生的验证由于dialog有不同的”智能等级“、三种形态、多种验证类型,似乎有很多可能的组合可供选择。
事实上,使用的组合倾向于每次都使用相同的一个。例如,在大部分情况下,可能使用dump与standar对话框,
以及无模式的smart对话框。对于验证,正确的策略非常依赖于情况。
PyQt4对话框(dialog类型介绍)相关推荐
- Android 对话框(Dialog)大全 建立你自己的对话框
Android 对话框(Dialog)大全 建立你自己的对话框 创建对话框 一个对话框一般是一个出现在当前Activity之上的一个小窗口. 处于下面的Activity失去焦点, 对话框接受所有的用户 ...
- Web开发中的弹出对话框控件介绍
Web开发中,目前由于Jquery的大行其道,因此很多弹出对话框,都用到了Jquery技术,反而原始的弹出对话框的方式较为少用了.不过基于JQuery的方式实现对话框窗口弹出,也有很多控件可以利用,由 ...
- Android 对话框(Dialog)大全
Activities提供了一种方便管理的创建.保存.回复的对话框机制,例如onCreateDialog(int),onPrepareDialog(int,Dialog),showDialog(int) ...
- Android对话框dialog大全(代码直接可用)
Activities提供了一种方便管理的创建.保存.回复的对话框机制,例如 onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog( ...
- Android对话框dialog大全
Activities提供了一种方便管理的创建.保存.回复的对话框机制,例如 onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog( ...
- android 对话框大全,Android 对话框(Dialog)大全
Activities提供了一种方便管理的建立.保存.回复的对话框机制,例如onCreateDialog(int), onPrepareDialog(int, Dialog), showDialog(i ...
- 常见的对话框Dialog
常见的对话框: 1.Toast 2.普通的对话框 3.列表对话框 4.单选对话框 5.多选对话框 6.自定义VIew对话框 7.进度条对话框(与进度相关的控件都可以到子线程更新UI) 8.是用了Ada ...
- Dialog使用介绍
Dialog使用介绍 简单的对话框 含列表的对话框 自定义view样式 Dialog和Activity交互 Dialog展示 Dialog取消展示 Dialog展示WebView,监听后退键 本文Gi ...
- 智能合约语言Solidity 类型介绍
链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. 智能合约语言Solidity 类型介绍11 Solidity是以太坊智能合约编程语言,阅读本文前,你应该对以太坊.智能合 ...
最新文章
- 【Qt】qt打印文件名、函数名、行号
- 收音机磁棒天线4根接法_无线电科技基础:无声的海上GPS导航 天线接收的方向性...
- lora终端连接云服务器_腾讯云服务器上安装mysql,并用navicat连接
- abstract类_走进C# abstract,了解抽象类与接口的异同
- java转scala
- C++基础与深度解析第七章:深入IO
- 推荐系统之协同过滤算法分布式实现(附代码实现)
- 天猫精灵 AIoT 平台将研发门槛从1000万降至40万,缩减 3 倍研发周期
- PHP Predefined Interfaces 预定义接口
- Oracle、 Mysql 、 SQLserver 分页查询
- 关于人生的思考(暂时想不出更好的标题)
- java .entryset_Java中map的entrySet()方法返回的是什么内容啊?有点晕
- 网站类项目商业计划书(转)
- php机器人聊天对话框,PHP实现QQ聊天机器人
- 泰勒公式矩阵形式_泰勒公式的各种余项形式及其多种证明
- gamma矫正/gamma映射
- 不背公式快速计算IP地址掩码---游码法
- php时间相减_PHP 日期加减计算方法示例
- 国盛源投资量化买卖一定会挣钱吗?量化买卖怎样挣钱的?
- 什么是RTK基站?它的工作原理是什么
热门文章
- 一级域名注册如何申请?需要注意哪些事项?
- Leetcode 2261. K Divisible Elements Subarrays
- win10电脑部分软件不能连接网络,只有QQ和微信可以连接网络,浏览器不能上网
- 【文本标注】文本标注工具brat的使用
- 育网云盘签约北京市大兴区黄村镇第一中心小学云端租赁服务
- 注塑机计算机控制器,注塑机微机控制器,Microprocessor-based Controller for PIM,音标,读音,翻译,英文例句,英语词典...
- 信息安全系统所需要遵循的基本原则有哪些?
- 基于聚集诱导荧光探针细胞膜/细胞膜表面GABA受体荧光探针/上汞离子荧光探针的研究
- 前端页面开发浅谈:PC 端设计如何“完美”迁移到移动端?
- 星际争霸Ⅱ 神族操作记录