基于WeX5的HTML5 App移动应用开发
上QQ阅读APP看书,第一时间看更新

2.2 对话框组件

对话框组件中最常用到的是messageDialog、windowDialog和windowReceiver这三个组件,使用对话框组件可以减少代码量。

2.2.1 messageDialog组件

messageDialog是一个非常有用的组件,在Java交互编程中,需要给出如出错、警告、操作、结果等提示时,messageDialog就会起到事半功倍的效果,messageDialog组件调用组件的show方法打开对话框。例如,单击button按钮就会有消息提示出现。下面是messageDialog组件的示例。

【例2-9】messageDialog组件。

978-7-111-64845-1-Chapter02-20.jpg

运行结果如图2-9所示。

978-7-111-64845-1-Chapter02-21.jpg

图2-9 messageDialog组件运行结果

2.2.2 windowDialog组件

windowDialog组件用来弹出对话框,一般结合使用windowReceiver,在调用者页面放windowDialog组件,用来指定对话框的页面及相关属性,windowDialog组件根据关联的src属性绑定对话框页面,调用组件的open方法打开对话框。windowDialog的属性“status”是初始化状态,有“normal”和“maximize”两种情况,前者表示对话框大小可以调整,后者表示对话框充满整个屏幕。例如,使用windowDialog组件传送当前的时间,将对话框的初始状态设为“normal”,对话框的宽度和高度设为70%。下面是windowDialog组件的示例。

【例2-10】windowDialog组件。

978-7-111-64845-1-Chapter02-22.jpg

运行结果如图2-10所示。

2.2.3 windowReceiver组件

windowReceiver是对话框接收组件,一般结合windowDialog组合使用,用于接收windowDialog打开对话框时传送的数据,关闭对话框,向主页面传送数据。windowReceiver是通过onReceive事件接收windowDialog传送过来的信息,可以通过windowCannel()方法关闭当前对话框不向调用者传送数据,还可以通过windowEnsure()方法向调用者传送数据并关闭当前窗口。下面是windowReceiever组件的示例。

978-7-111-64845-1-Chapter02-23.jpg

图2-10 windowDialog组件运行结果

【例2-11】windowReceiver组件。

978-7-111-64845-1-Chapter02-24.jpg

在上一个示例,使用windowDialog将当前日期从example10.w文件传送给子界面datee.w文件,需要子界面datee.w文件的onReceive()方法接收日期,并用span组件显示出来,用windowCancel()方法关闭当前页面并返回上级界面,直接返回不传递参数,运行结果如图2-10所示。