我编写了一个 LWUIT 应用程序,其中涉及两个 RecordStores recordStore
和
记录存储 2 。
两种方法 getRecordData 用于检索所有记录
recordStore,方法 getRecordData2 用于检索所有记录
记录存储 2 。
添加了两个 Radiobuttons rb 和 rb2 ButtonGroup 称为 group
一个名为 tf 的 TextField
添加按钮,用于为 recordstore 或 recordstore2 添加记录
选择 rb 或 rb2 后
必须写入 tf TextField 作为记录的文本
两个列表 mylist 和 mylist2
mylist 显示记录存储的所有记录
mylist2 显示 recordstore2 的所有记录
全部按钮显示recordstore和recordstore2的所有记录
简单的问题摆在我面前:-
从应用程序退出后返回到它并按全部按钮
mylist 和 mylist2 为空(不显示记录)!
谢天谢地,谁能帮助我
import java.util.*;
import com.sun.lwuit.table.*;
import com.sun.lwuit.table.DefaultTableModel;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import javax.microedition.rms.RecordStore;
import javax.microedition.rms.RecordStoreNotOpenException;
import javax.microedition.rms .*;
import com.sun.lwuit.layouts.*;
import com.sun.lwuit.*;
import javax.microedition.lcdui.Canvas;
import com.sun.lwuit.events.*;
import com.sun.lwuit.plaf.*;
import javax.microedition.midlet.*;
import com.sun.lwuit.geom.*;
import com.sun.lwuit.*;
import com.sun.lwuit.events.*;
public class HelloLWUITMidlet3 extends MIDlet implements Runnable, ActionListener
{
private RecordStore recordStore,recordStore2;
String team,team2;
public String [] getRecordData()
{
String[] str = null;
int counter = 0;
try
{
RecordEnumeration enumeration = recordStore.enumerateRecords(null, null, false);
str = new String[recordStore.getNumRecords()];
while(enumeration.hasNextElement())
{
try
{
str[counter] = (new String(enumeration.nextRecord()));
counter ++;
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
catch (Exception e)
{
e.printStackTrace();
}
return str;
}
public String [] getRecordData2()
{
String[] str = null;
int counter = 0;
try
{
RecordEnumeration enumeration = recordStore2.enumerateRecords(null, null, false);
str = new String[recordStore2.getNumRecords()];
while(enumeration.hasNextElement())
{
try
{
str[counter] = (new String(enumeration.nextRecord()));
counter ++;
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
catch (Exception e)
{
e.printStackTrace();
}
return str;
}
public void startApp()
{
com.sun.lwuit.Display.init(this);
int bgColor =0x0066CC;
final ButtonGroup group = new ButtonGroup();
final RadioButton rb = new RadioButton("First Team");
final RadioButton rb2 = new RadioButton("Second Team");
group.add(rb);
group.add(rb2);
final f1 g = new f1();
final com.sun.lwuit.List mylist = new com.sun.lwuit.List();
final com.sun.lwuit.List mylist2 = new com.sun.lwuit.List();
final form6 my = new form6();
final com.sun.lwuit.Form f = new com.sun.lwuit.Form("Football");
f.getStyle().setBgColor(0X99CCFF);
BoxLayout boxlayout =new BoxLayout(BoxLayout.X_AXIS);
final Button goals = new Button("See goals");
final Button button = new Button("Goals Record");
final com.sun.lwuit.TextField tf =new com.sun.lwuit.TextField();
final com.sun.lwuit.TextField txtfield5 =new com.sun.lwuit.TextField();
final com.sun.lwuit.TextField txtfield6 =new com.sun.lwuit.TextField();
final Button addition = new Button("Add Goals");
final Button All = new Button("All Goals");
addition.getStyle().setBgColor(0X0066CC);
com.sun.lwuit.Command back = new com.sun.lwuit.Command("Main_Screen");
final form6 ff = new form6();
button.getStyle().setBgColor(0X0066CC);
goals.getStyle().setBgColor(0X0066CC);
All.getStyle().setBgColor(0X0066CC);
Style g_style5 = g.getSelectedStyle() ;
f.addComponent(button);
ff.addCommand(back);
//g.addComponent(main_screen);
g.addComponent(tf);
g.addComponent(addition);
g.addComponent(rb);
g.addComponent(rb2);
g.addComponent(All);
g.getStyle().setBgColor(0X99CCFF);
g.addCommand(back);
g.addCommandListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae) {
f.show();
}
}
);
ff.addCommandListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae) {
f.show();
}
}
);
ff.getStyle().setBgColor(0X99CCFF);
try{
recordStore2 = RecordStore.openRecordStore("My Record Store2", true);
}
catch(Exception ex)
{ }
try
{
recordStore = RecordStore.openRecordStore("My Record Store", true);
}
catch(Exception ex)
{ }
All.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
try
{
com.sun.lwuit.Label l = new com.sun.lwuit.Label("First Team Goals") ;
ff.addComponent(l);
String [] record= getRecordData();
int j1;
String valueToBeInserted2="";
for( j1=0;j1< getRecordData().length;j1++)
{
valueToBeInserted2=valueToBeInserted2 + " " + record[j1];
if(j1==getRecordData().length)
{
mylist.addItem(record[j1]);
}
}
ff.addComponent(mylist);
com.sun.lwuit.Label ll = new com.sun.lwuit.Label("Second Team Goals") ;
ff.addComponent(ll);
String [] record2= getRecordData2();
int j2;
String valueToBeInserted="";
for( j1=0;j1< getRecordData().length;j1++)
{
valueToBeInserted2=valueToBeInserted2 + " " + record[j1];
if(j1==getRecordData().length)
{
mylist.addItem(record[j1]);
}
}
ff.addComponent(mylist2);
}
catch(java.lang.IllegalArgumentException e)
{
}
finally
{
ff.show();
}
}
}
);
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
g.show();
}
}
);
goals.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae) {
}
}
);
final Thread th = new Thread(this);
addition.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ae) {
String s =tf.getText();
if(rb.isSelected())
{
if(s!=null && s.length() > 0)
{
try{
String kk =tf.getText();
mylist.addItem(kk);
byte bytestream[] = kk.getBytes() ;
int i = recordStore.addRecord(bytestream, 0, bytestream.length);
}
catch(Exception ex)
{ }
Dialog validDialog = new Dialog(" ");
Style Dialogstyle = validDialog.getSelectedStyle() ;
validDialog.setScrollable(false);
validDialog.getDialogStyle().setBgColor(0x0066CC);
validDialog.setTimeout(1000);
TextArea textArea = new TextArea("....");
textArea.setFocusable(false);
textArea.setText("A new goal has been added"+"" );
validDialog.addComponent(textArea);
validDialog.show(0, 10, 10, 10, true);
}
}
else if (rb2.isSelected())
{
if(s!=null && s.length() > 0)
{
try{
String kk =tf.getText();
mylist2.addItem(kk);
byte bytestream[] = kk.getBytes() ;
int i = recordStore2.addRecord(bytestream, 0, bytestream.length);
}
catch(Exception ex) { }
Dialog validDialog = new Dialog(" ");
Style Dialogstyle = validDialog.getSelectedStyle() ;
validDialog.setScrollable(false);
validDialog.getDialogStyle().setBgColor(0x0066CC);
validDialog.setTimeout(1000);
TextArea textArea = new TextArea("....");
textArea.setFocusable(false);
textArea.setText("A new Goal has been added"+"" );
validDialog.addComponent(textArea);
validDialog.show(0, 10, 10, 10, true);
}
}
else if((rb.isSelected()==false&&rb.isSelected()==false)||(s==null && s.length()<= 0))
{
Dialog validDialo = new Dialog(" ");
validDialo.setScrollable(false);
validDialo.getDialogStyle().setBgColor(0x0066CC);
validDialo.setTimeout(5000);
TextArea textArea = new TextArea("....");
textArea.setFocusable(false);
textArea.setText("please enter scorer name and choose his team");
validDialo.addComponent(textArea);
validDialo.show(50, 50, 50, 50, true);
txtfield6.clear();
}
}
}
);
f.show();
}
public void run ()
{
while(true)
{
String get[] = getRecordData();
Dialog validDialog = new Dialog(" ");
Style Dialogstyle = validDialog.getSelectedStyle() ;
validDialog.setTimeout(5000);
validDialog.setScrollable(true);
validDialog.setLayout(null);
validDialog.setTimeout(5000);
TextArea textArea = new TextArea( );
for(int ii=0;ii<getRecordData().length;ii++ )
{
textArea.setColumns(getRecordData().length);
validDialog.addComponent(textArea);
validDialog.show(10, 10, 10, 10, true);
System.out.println(get[ii]+"\n");
System.out.println(textArea.getColumns()+"\n");
}
}
}
public void pauseApp()
{
}
public void destroyApp(boolean unconditional)
{
}
public void actionPerformed(ActionEvent ae)
{
notifyDestroyed();
}
public class f1 extends com.sun.lwuit.Form
{
com.sun.lwuit.TextField tf;
public f1()
{
com.sun.lwuit.Form f1 = new com.sun.lwuit.Form("Goals Records");
tf =new com.sun.lwuit.TextField();
}
}
public class form6 extends com.sun.lwuit.Form
{
com.sun.lwuit.TextField txtfield3;
com.sun.lwuit.TextField tf3;
public form6()
{
com.sun.lwuit.Form mylist = new com.sun.lwuit.Form("Goals List");
}
}
}