- UID
- 872238
|
这就可以允许我们为虚拟机设置一些内存分配,以使我们的类运行得更加有效率。我们需要反复的实验不同的值,以找出对于我们的应用程序最佳的配置。这取决于我们有多少类以及同时初始化了多少对象。记住,在小型设备应用程序开发中,创建的对象尽可能少,这永远是至理名言。
其它的 GUI类
我们已经讨论了 waba.ui包中的一些基本的、重要的类。你当然可以猜出复选框和单选按钮的用法,因为这些都是标准的 AWT类,而且在 Waba中它们的功能于在Java中没有什么不同之处。可是,还有两三个类你不会在用于Palm的其他 Java实现中见到。
MessageBox是一个类,它在另一个窗口内打开一个模式窗口,从这个名字中你就可以确定它的用法。你还可以创建一个上面带有许多按钮比如 Yes/No/Cancel这样的消息框,getPressedButtonIndex()方法将知道用户按下了这三个按钮中的哪一个。
Tab控件允许你添加选项卡到窗口中,增加你的屏幕的内容,例如,如果我们增强我们的联系管理器,使之成为一种销售人员用来跟踪潜在的和当前的客户的需要的一种工具,我们的应用程序看上去应当如下所示:
下面是我们修改并增强功能后的版本:
import waba.ui.*;
public class ContactManager extends MainWindow{
TabPanel tabpanel;
Contacts contacts;
ContactManager(){
setTitle("ContactManager");
}
public void onStart()
{
String tabs[] = new String[]{"Contacts","Prospects"};
tabpanel = new TabPanel(tabs);
tabpanel.setRect(0, 15, this.width, this.height);
tabpanel.setGaps(2,2,2,2);
contacts = new Contacts();
contacts.setRect(10,10,160,110);
tabpanel.getPanel(0).add(contacts);
add(tabpanel);
}
public void onEvent(Event event){
if (event.type == ControlEvent.PRESSED && event.target == tabpanel)
{
if (tabpanel.getActiveTab() == 0);// 保存联络信息else;}
}
}
class Contacts extends Container{
Label lblName = new Label("Name");
Edit edtName = new Edit();
Label lblAddr = new Label("Address");
Edit edtAddr = new Edit();
Label lblEmail = new Label("email");
Edit edtEmail = new Edit();
Button button = new Button ("OK");
public Contacts()
{
lblName.setRect(10,10,60,12);
edtName.setRect(10,22,90,12);
lblEmail.setRect(10,34,60,12);
edtEmail.setRect(10,46,90,12);
lblAddr.setRect(10,58,60,12);
edtAddr.setRect(10,70,90,12);
button.setRect(10,90, 30,12);
add(lblName);add(edtName);
add(lblEmail);
add(edtEmail);
add(lblAddr);
add(edtAddr);
add(button);
}
}
|
|
|