扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:builder.com.cn 2007年1月12日
关键字:
在这个例子中,我们将通过著名的“Hello World”工程一步一步的演示BlackBerry(黑莓) JDK是如何工作的。创建一个新的工程,选择“工程”>“创建新的工程”。输入你的工程名和文件路径。在这个例子中,我们将要初试化“Hello World”并调用这个工程。
虽然我们建立了一个工程,但是我们还需要添加一些Java代码到我们的工程中。新建一个文件保存我们需要的代码,并以.JAVA为后缀名。我们将这个文件命名为“HelloWorld.JAVA”, 这个文件你可以使用Notepad文本编辑器或其他的文本编辑器来创建。
通常,在Java应用程序中你可以使用import声明来添加你想引用不同的Java类。因为BlackBerry(黑莓)使用Java 2 Mobile Edition,所有你可以获得J2ME的所有类。另外,还有大量的类是BlackBerry(黑莓)特有的,要使用这些类我们需要为用户界面和驱动程序添加接口。
所以你的第一部分代码将类似这样的:
import com.rim.samples.device.resource.*;
import net.rim.device.api.ui.*;
import net.rim.device.api.ui.component.*;
import net.rim.device.api.ui.container.*;
import net.rim.device.api.system.*;
import net.rim.device.api.collection.util.*;
(编者按:你可以在文档中找到所有的这些类的描述,其中包括JDK的类描述。)
接下来,我们需要为Hello World应用程序创建自定义的类和应用程序,并且使用“pushScreen”方法使我们的应用程序看上去像动态应用程序。
public class HelloWorld extends UiApplication
{
public static void main(String[] args)
{
HelloWorld theApp = new HelloWorld();
theApp.enterEventDispatcher();
}
public HelloWorld()
{
pushScreen(new HelloWorldScreen());
}
}
最后,我们要认真考虑,哪些实际输入的元素是我们希望在屏幕上看到的,这段程序以默认的菜单选项和关闭选项开始。然后我们也可以使用setTitle方法来设置应该出现在我们的应用程序顶部的标题。
public HelloWorldScreen()
{
super(DEFAULT_MENU | DEFAULT_CLOSE);
setTitle(new LabelField(‘Hello World’), LabelField.ELLIPSIS | LabelField.USE_ALL_WIDTH));
add(new RichTextField(‘Hello World!’));
}
我们也需要设置用户关闭应用程序后的动作。在这个例子中,我们将对BlackBerry(黑莓) 侧面的Escape键进行设置,当关闭应用程序或者按下了Escape键时,我们将显示一些文字同时关闭这个程序。代码如下所示:
public boolean onClose()
{
Dialog.alert(_’Now exiting application’);
System.exit(0);
return true;
}
public boolean keyChar(char key, int status, int time)
{
boolean retval = false;
switch (key) {
case Characters.ESCAPE:
onClose();
retval = true;
break;
}
return retval;
}
}
把HelloWorld.java文件增加到工程中后,要想在BlackBerry(黑莓)上启动这个应用程序还必须在BlackBerry(黑莓)的桌面上创建一个图标。图标应该是28x28像素的,并且是个单层的PNG或者GIF文件。下面我讲述了怎样来创建一个图标文件,当然你也可以使用同样的方法轻松的创建你所喜欢的图形或者图标编辑程序。
增加图标:在你的工程上点鼠标右键,选择“添加文件到工程”,然后就可以看到文件所提供的所有的图标,并进行选择。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者