iアプリで、パネル遷移の際に遷移元の変数を遷移先に引き渡したいのですが、その方法がわかりません。 テスト用のプログラムを作成しましたので、どなたかご教示いただければ幸いです。 ソフトキー1:終了 ソフトキー2:TextBoxのリセット ボタン:パネル遷移とTextBoxの入力文字の遷移先への引き渡し TextBox:受納したテキストの表示と送付用のテキストの入力 以上の機能をパネル'p1'と'p2'とに備え、二つのパネル間での遷移とテキストの受け渡しをしたいと思います。 ========== Test.java ========== public class testx extends IApplication { public void start() { P1 p1 = new P1(); P2 p2 = new P2(); Display.setCurrent(p1); } } ======== P1.java ======== public class P1 extends Panel implements ComponentListener, SoftKeyListener{ IApplication iapp; String str =""; Button btn1 = new Button("送る"); TextBox tb1=new TextBox("",33,1,TextBox.DISPLAY_ANY); P1(){ setTitle("P1"); HTMLLayout lm=new HTMLLayout(); setLayoutManager(lm); lm.begin(HTMLLayout.LEFT); add(tb1); add(btn1); lm.end(); setSoftKeyListener(this); setSoftLabel(SOFT_KEY_1,"終了"); setSoftLabel(SOFT_KEY_2,"リセット"); setComponentListener(this); Display.setCurrent(this); } public void componentAction(Component source,int type,int param){ if(type==BUTTON_PRESSED){ /* p2 からのテキストをstrと定義しTextBoxに表示したい。 その定義の仕方がわからない。 str = ; */ tb1.setText(str); /* TextBoxに新たに入力した文字列をstrと再定義。 変数strをp2に渡したい。 */ str = tb1.getText(); P2 p2 = new P2(); Display.setCurrent(p2); } } public void softKeyPressed(int softKey){ if(softKey==SOFT_KEY_1){ iapp.terminate(); } if(softKey==SOFT_KEY_2){ tb1.setText(""); } } public void softKeyReleased(int softKey){ } } ======== P2.java ======== public class P2 extends Panel implements ComponentListener, SoftKeyListener{ IApplication iapp; String str =""; Button btn1 = new Button("送る"); TextBox tb1=new TextBox("",33,1,TextBox.DISPLAY_ANY); P2(){ setTitle("P2"); HTMLLayout lm=new HTMLLayout(); setLayoutManager(lm); lm.begin(HTMLLayout.LEFT); add(tb1); add(btn1); lm.end(); setSoftKeyListener(this); setSoftLabel(SOFT_KEY_1,"終了"); setSoftLabel(SOFT_KEY_2,"リセット"); setComponentListener(this); Display.setCurrent(this); } public void componentAction(Component source,int type,int param){ if(type==BUTTON_PRESSED){ /* p1 からのテキストをstrと定義しTextBoxに表示したい。 その定義の仕方がわからない。 str = ; */ tb1.setText(str); /* TextBoxに新たに入力した文字列をstrと再定義。 変数strをp1に渡したい。 */ str = tb1.getText(); P1 p1 = new P1(); Display.setCurrent(p1); } } public void softKeyPressed(int softKey){ if(softKey==SOFT_KEY_1){ iapp.terminate(); } if(softKey==SOFT_KEY_2){ tb1.setText(""); } } public void softKeyReleased(int softKey){ } }
↧