您的位置是: 软件 > 开发者网络 > 开发工具 > 移动开发 > 正文 查cseek报价

Java嵌入式开发之六
2001-10-18作者: 郑伟出处: yesky
我对此感兴趣
订阅电子杂志
发表评论
advertisement
热点推荐
· 群雄逐鹿 十四种Java开发工具点评
· 网文快捕,将网络资源搬回家
· Windows系统瘦身计划
· PS多媒体教程带你享受快乐学习
· 网络游戏外挂设计深度探索
· 武装你的桌面,桌面工具大阅兵
天极搜索引擎服务
资讯  产品  经销商  下载  社区

1 2 3 4 5  下一页



  
使用Waba开发Palm程序


 

  前面我用了很大的篇幅介绍如何使用J2ME开发运行于移动设备上的应用程序,并且在我第一篇文章中我在谈论开发Palm应用程序可以使用的解决方案时也提到了其他几种方案。本文中我们将开始学习Waba,学习使用它编写运行于Palm上的应用程序。Waba是一种源码开放、很像Java的语言。如果你了解 Java,你就能知道Waba的语法。

  第一节 用户界面控件

  让我们从用户界面类开始学习Waba,因为一个PDA上很少有程序在没有用户界面的情况下可用,然后我们再谈谈Waba种的数据持久性。构建图形用户界面的大部分类都包含在 waba.ui包中。这些类的继承层次结构非常像 Java的 AWT。当然,它们全部都是扩展 java.lang.Object和 waba.ui.Control。我建议你参照 waba.ui程序包的文档来弄明白用于执行像放置一个控件、使它可见等常见任务的静态数据成员和方法。下面的类扩展了waba.ui.Control:

   Button --命令按钮

   Check --复选框控件

   Container --另外一个控件的容器 (类似于 AWT Panel或一个 Swing Jpanel )。

   Edit --一个文本输入编辑控件 (类似于 TextField )

   Label --标签控件

   MainWindow --指向一个基于用户界面的应用程序的主要输入端。所有的 GUI应用程序都必须有。

   Radio --单选按钮。

   TabBar/Tab/TabPanel -- TabBar是用于选项卡的容器。

  作为这些类的祖先, Control类包括用于事件处理和绘画控制的方法。让我们看一个简单的 Waba应用程序的例子。这个 Waba应用程序能够提示使用者一些信息,在本例中,在一个联系管理器中查寻一个名字。



  这个类的代码是

import waba.ui.*;
public class ContactManager extends MainWindow
{
 Edit edit;
 Label label;
 Button button;
 public ContactManager()
 {
  setTitle("Contact Manager");
  setBorderStyle(Window.RECT_BORDER);
  label = new Label("Enter name to search for:");
  label.setRect(5, 65, 110, 15);
  add(label);
  Edit edit = new Edit();
  edit.setRect(55, 80, 60, 15);
  add(edit);
  button = new Button("Find");
  button.setRect(65, 110, 30, 15);
  add(button);
 }public void onEvent(Event event)
 {
  if (event.type == ControlEvent.PRESSED)
  {
   if (event.target == button)
   {
    .......
   }
  }
   }}

  首先,我们导入 waba.ui包,因为所有的用户界面类都在那里。这个类是扩展 MainWindow。每个有用户界面的 Waba应用程序都必须扩展 MainWindow。接下来,我们声明需要的变量:一个 Edit、一个 Label和一个 Button。在构造程序中,我们调用 setTitle和 setBorder,然后启动每一个 GUI组件。注意,我们还可以使用控件的绝对位置。这是 Waba和 Java之间的一个区别。这里没有布局管理器的概念,我们把 x和 y坐标以及控件的宽度和高度传递进程序,这个控件就被放置在屏幕上的这个位置。

  Waba的另一特色是一个模拟的 Palm键盘,如下图所示:



  最后, onEvent方法进行事件处理:首先,这个事件对象本身被查询,以确定事件类型。在本例中我们想知道它是否是一个 PRESSED事件。(其他类型包含 FOCUS_IN、 FOCUS_OUT、 TIMER和 WINDOW_CLOSED )。这些都定义在 ControlEvent类中,是扩展事件。如果这个事件和我们要寻找的事件类型匹配,然后我们就可以确定激活事件的对象。在我们的 ContactManager应用程序中,我们只有要响应按钮按下的动作。所以如果用户轻点按钮激活事件,然后我们就可以执行代码来查寻目录中的姓名。

  定义在 MainWindow类中的其他有用的方法是 onStart和 onExit。onStart方法可能包括初始化代码;它在构造程序完成之后被调用。应用程序退出先要调用onExit方法,这时可以执行必要的清理工作比如写入未保存的数据。

1 2 3 4 5  下一页


【责任编辑:方舟】
推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志发表评论

天极商业街
·激情美女让你想入非非
·图铃梦工厂下载无限!
·找寻童真,卡通专题
·夏日激情交友社区!
·星座运程,预测人生
CSEEK搜索
相关内容阅读排行榜
  • 日本发行新型限定版GameCube
  • 图谋低端市场 Sempron一门三杰再续辉煌
  • 密蜂大盗木马 开MM摄像头偷窥隐私
  • Win2000注册表的备份与恢复
  • 制作无人值守的Win XP安装光盘
  • 联众世界高校棋牌联赛完美谢幕
  • 全新技嘉i915P主板GA-8GPNXP Duo抢先细看
  • 《信仰》7月火热引爆精彩活动

  • advertisement

     短信乐园
    好名好运 每日运程 姓名配对 情侣缘分 生命曲线 三生三世 自我认知 前世今生
    游戏嘉年华 爱情宝石 魔法水晶 麻辣竞猜 魔法占卜 暗恋表白 星座运程 浮生记


    · 至少还有你-林忆莲
    · 东风破-周杰伦
    · 什么都不怕-杨千桦
    · 下一站天后-Twins
    · 不羁的风-张国荣
    · 帅哥接电话
    · 严守一标准铃声
    · 0.01公分
    · 下雨收衣服啦
    · 快点接我电话吧

    欲望都市 成人笑话 图铃包月 天气预报 麻辣生活 都市报
    体育新闻 娱乐新闻 点歌祝福 情人悄悄话