`
wayfarer
  • 浏览: 298419 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

往Alert中添加Command

阅读更多
} catch (IOException e) {
	Alert alert = new Alert("地图; IOException", "网络连接捕获住异常:" + e.toString() + "\n\n" + "程序在10秒后会自动退出", null, AlertType.WARNING);
	final Command exitCommand = new Command("退出", Command.EXIT, 1);
	alert.addCommand(exitCommand);
	alert.setTimeout(10 * 1000);
	alert.setCommandListener(new CommandListener() {
		public void commandAction(Command c, Displayable d) {
			if (exitCommand == c) {
				dispatcher.exit(true);
			}
		}
	});
	dispatcher.display.setCurrent(alert);
}

  这一段代码如果没有alert.setTimeout(10*1000)这条语句,不经点击exitCommand按钮,程序会自动执行dispatcher.exit(true); 纠结了一个上午,解释如下:

 

When it is created, an Alert implicitly has the special Command DISMISS_COMMAND present on it. If the application adds any other Commands to the Alert, DISMISS_COMMAND is implicitly removed. If the application removes all other Commands, DISMISS_COMMAND is implicitly restored. Attempts to add or remove DISMISS_COMMAND explicitly are ignored. Thus, there is always at least one Command present on an Alert.
If there are two or more Commands present on the Alert, it is automatically turned into a modal Alert, and the timeout value is always FOREVER. The Alert remains on the display until a Command is invoked. If the Alert has one Command (whether it is DISMISS_COMMAND or it is one provided by the application), the Alert may have the timed behavior as described above. When a timeout occurs, the effect is the same as if the user had invoked the Command explicitly.

分享到:
评论

相关推荐

    3. 高级界面开发2Command事件和List2.rar

    然后,将Command添加到Displayable对象(如Form或Alert)上: ```java Displayable myDisplayable = ...; myDisplayable.addCommand(myCommand); ``` 当Command被触发时,会调用CommandHandler的commandAction()...

    alert系统托盘程序示例源码

    在VC++中,可以使用资源编辑器添加和管理这些图标。 4. **菜单处理**:右键点击系统托盘图标通常会弹出一个上下文菜单。程序需要处理WM_COMMAND消息,根据用户选择的菜单项执行相应操作。 5. **隐藏窗口**:为了使...

    ckeditor_4.x自定义按钮控件详细配置

    在 plugin.js 文件中,我们可以使用 CKEDITOR.plugins.add() 方法来添加插件,并在 init 函数中注册命令和加载自定义窗口。例如: ``` CKEDITOR.plugins.add('myplugin', { requires: ['dialog'], init: function...

    J2ME 手机程序开发

    // 添加Command myList.setCommandListener(this); myList.addCommand(cmdOK); myList.addCommand(cmdCancel); // 在Midlet的commandAction方法中处理事件 public void commandAction(Command c, Displayable d) { ...

    JAVA的基础知识

    在实践中,我们需要使用 TextBox 的构造函数创建文本框,然后设置其初始值为100,接着添加一个Command对象,当该Command被触发时,更新TextBox的内容。 2. List的使用:List是Java中用于显示一组可选择项的组件。在...

    获取单选按钮中被选中的选项

    在编程领域,尤其是在GUI(图形用户界面)设计中,单选按钮是一种常见的组件,用于让用户在多个选项中选择一个。当需要获取用户在对话框中所选的单选按钮时,通常涉及到事件监听和处理机制。本文将详细介绍如何在...

    JavaMe登录界面代码

    在JavaME中,可以为`Form`添加命令,并通过实现`CommandListener`接口来处理命令事件。 #### 1. 添加命令到表单 ```java form.addCommand(cmd_Exit); form.addCommand(cmd_Login); ``` #### 2. 设置命令监听器 `...

    J2ME中文API帮助文档

    1. `addCommand(Command cmd)`:向Displayable添加命令按钮,用于导航或操作。 2. `getHeight()` 和 `getWidth()`:获取屏幕的有效高度和宽度。 3. `getTicker()` 和 `setTitle()`:获取和设置屏幕标题或滚动条。 4....

    AnyFo - Java ME化骨棉掌.doc

    // 添加Command this.setCommandListener(this); // 设置Command监听器 } public void commandAction(Command arg0, Displayable arg1) { if (true == arg0.getLabel().equals("Print")) { System.out....

    j2me用户登陆交互代码

    在 `commandAction()` 方法中,我们需要获取 `TextBox` 的值并进行登录验证。这通常涉及到与服务器的通信,比如发送HTTP请求,验证用户名和密码是否匹配。由于J2ME的网络支持,我们可以使用 `javax.microedition.io....

    PhoneGap插件扩展

    在PhoneGap项目中添加自定义插件,需要在`config.xml`中声明该插件,并确保在编译时将Java或Objective-C代码包含到项目中。对于Android,可能还需要在`res/xml/config.xml`中配置权限,如显示对话框所需的`android....

    手机游戏设计与开发试题 j2me 设计大赛比赛试题

    这个陈述是正确的,Command类用于在用户界面中添加按钮或命令,填写“√”。 10. 抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。这个陈述是不完全正确的,抽象类可以包含非抽象方法,填写“×”。 ...

    js利用shell命令操作

    要解决这个问题,用户需要在浏览器的Internet选项中调整安全设置,将Web服务器添加到“受信任的站点”,并启用“对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本”选项。 下面是一个简单的示例,展示了如何...

    Displayable_Demo.rar_DEMO

    你可以为`Displayable`添加命令,然后在事件处理中响应这些命令。 6. **文件名的修改**:描述中提到要关注文件名的修改,这可能意味着DEMO中的代码可能会涉及到读取或保存文件,或者需要用户输入文件名。在J2ME中,...

    修改鼠标右键菜单,挺好看的菜单

    比如,如果你想添加一个“压缩”选项,可以在注册表中创建一个名为“Compress”的子键,然后在该子键下创建一个名为“command”的字符串值,其数据为压缩软件的命令行参数。 **知识点4:安全注意事项** 修改注册表...

    SQL 系统存储过程用法整理

    - **用途**:将指定的作业、警报或操作员类别添加到服务器中。 - **示例**: ```sql EXEC sp_add_category @class = N'JOB', @type = N'LOCAL', @category_name = N'MyCategory'; ``` ##### 24. **sp_add_job...

    J2ME试卷,大学生必备

    5) J2ME 中,MIDP 的用户界面组件包括 `Form`、`ChoiceGroup`、`TextBox`、`Alert`、`ImageItem` 和 `Command` 等。这些组件允许开发者构建交互式的用户界面,例如,`Form` 用于展示文本和控件的列表,`ChoiceGroup`...

    运用存储过程修改数据库

    alert("修改成功!"); } } ``` 在这个例子中,`updateinfo`函数收集了用户界面中输入的数据,然后调用了一个名为`updatefriendinfo`的后台方法。`OnlineServices_ServiceChatsWindow`通常是服务代理或Web方法的...

    ListImage-item.zip_Selected

    【描述】描述中提到的“List with images shows alert when selected any list item”意味着这个程序实现了一个列表视图,该视图不仅包含文本信息,还包含了图像元素。当用户点击或选择列表中的任一图像项时,应用...

Global site tag (gtag.js) - Google Analytics