
J2me Alert与Timer操作实例教程
2KB |
更新于2025-02-09
| 17 浏览量 | 举报
收藏
在J2ME(Java 2 Micro Edition)中,Alert和Timer是两个基础且常用的组件,主要应用于移动设备的开发中。Alert是用于显示警告信息的组件,而Timer则可以用于在特定时间后执行任务。下面详细介绍这些组件的概念、特点、以及如何在实际编程中进行应用。
### Alert 组件
Alert是J2ME中用于显示临时通知用户信息的一个对话框组件。它通常用于以下场景:
- 显示错误信息
- 临时提示用户输入或执行操作
- 在进行长时间操作前提示用户等待
Alert组件具备以下特点:
- **立即性**:Alert通常用于立即向用户显示一些信息,不需要用户交互即可消失。
- **覆盖性**:在显示Alert时,它会覆盖当前界面上的其他组件。
- **短暂性**:Alert显示的时间很短,一般几秒后会自动消失,除非程序员在代码中指定了显示时间。
- **可配置性**:Alert的内容、标题和图像都可以自定义。
在编写Alert实例时,需要特别注意以下几点:
- 创建Alert实例时可以指定标题、文本和图像。
- 可以设置Alert显示的时间长度。
- 可以通过Alert.addCommand()添加命令,比如“确定”按钮,以便用户可以提前关闭Alert。
- Alert对象是UI的一部分,因此它需要在EDT(Event Dispatch Thread)中创建和显示。
### Timer 组件
Timer组件在J2ME中用于延迟或重复执行某项任务。它在用户界面编程中非常实用,尤其是在以下情况:
- 需要定时执行任务,比如定时检查网络连接状态。
- 需要重复执行任务,比如每隔一段时间刷新屏幕显示。
Timer组件具备以下特点:
- **延迟执行**:可以设置Timer在指定的延迟后执行任务。
- **周期性执行**:可以设置Timer周期性地重复执行任务。
- **任务调度**:Timer执行的是一个实现了Runnable接口的Task。
- **轻量级**:Timer对象本身是轻量级的,它不会创建多个线程。
在使用Timer时,需要注意以下几点:
- Timer是单线程的,它按照任务加入队列的顺序依次执行,因此对于长耗时的任务可能会影响Timer执行其他任务的及时性。
- Timer的Task需要快速执行,不能阻塞太久,否则会阻塞后续的Task执行。
- Timer的取消和重启需要程序员手动控制。
### 实例源码分析
以下是一个简单的J2ME程序实例,它展示了如何使用Alert和Timer:
```java
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class AlertTimerDemo extends MIDlet implements CommandListener {
private Display display;
private Command exitCommand;
private Alert alert;
private Timer timer;
public AlertTimerDemo() {
display = Display.getDisplay(this);
exitCommand = new Command("Exit", Command.EXIT, 1);
alert = new Alert("Warning", "This is an example Alert!", null, null);
alert.setTimeout(Alert.FOREVER);
timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
display.setCurrent(alert);
}
}, 5000); // 5 seconds delay
}
protected void startApp() {
if (alert != null) {
display.setCurrent(alert);
}
addCommand(exitCommand);
setCommandListener(this);
}
protected void pauseApp() {
}
protected void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
if (c == exitCommand) {
destroyApp(true);
notifyDestroyed();
}
}
}
```
在上述代码中,创建了一个名为AlertTimerDemo的MIDlet类,它扩展了MIDlet并实现了CommandListener接口。在这个简单的例子中:
1. 在构造函数中初始化了Display对象,并创建了一个Alert和一个Timer。
2. Alert对象设置了标题、内容,并将超时时间设置为FOREVER(即除非手动关闭,否则不会消失)。
3. Timer被用来在5秒后显示Alert,即在5秒延迟后执行显示Alert的任务。
4. 在startApp方法中,若Alert不为空,则设置Alert为当前显示,并添加了退出命令。
5. commandAction方法处理了退出命令的触发,执行销毁MIDlet的操作。
### 总结
J2ME的Alert和Timer组件对于开发移动应用程序是非常有用的。Alert组件能够在不干扰用户当前活动的情况下提供即时的反馈信息,而Timer组件则能够帮助程序在合适的时间点执行特定的任务,这对于保持用户界面的响应性和管理后台任务的执行非常关键。以上示例代码展示了这两个组件的基本用法,初学者可以通过编写和测试类似的代码,更好地理解和掌握这些组件的使用。
相关推荐










weixin_38514732
- 粉丝: 6
最新资源
- SSH分页功能实现与简单项目构建指南
- Smack开源XMPP客户端库最新版本发布
- IE浏览器中高效管理Cookies的方法
- AJAX+JSP文件上传带进度条实现详解
- MODELSIM在Xilinx ISE平台的仿真应用指南
- 信息与计算科学专业数理方程模拟试卷
- 简易运动会计分系统:轻松学习与应用指南
- Thaiphoon Burner:内存SPD信息修改与兼容性提升工具
- TinyXml: 简易XML解析器与C++集成方案
- avi转码为MPEG1格式的源代码实现及dll封装
- 详解MySQL与Tomcat连接池的配置方法
- Discuz所见即所得UBB编辑器asp版功能介绍
- 营销王网络版-CRM系统的ASP实现与SQL Server数据库集成
- 精确毫秒计时器的实现与应用
- 网页制作入门教程:电子教案要点解析
- Phison UP10与UP11固件低格工具详解
- MATLAB基础教程及经典例题解析
- 单片机配置FPGA的PLD设计技巧解析
- Java搜索引擎开发实战:源码解析与文档教程
- CSS2.0中文手册:样式表快速索引与注释
- 嵌入式系统工程师认证:专业复习资料指南
- 多功能网上购物商城系统源代码下载
- VS2008安装前必备清理工具使用指南
- SQL Server 2005数据库日志探索工具的介绍与应用