84 複数のパネルを切り替える例

複数のパネルを切り替える例

パネルやキャンバス、つまりFrameの切り替えには、

Display.setCurrent(切り替えるFrameサブクラスのオブジェクト)

で行う。

そこで、SoftKey1やSoftKey2で別のパネルなどのFrameに進むよう FrameFrameサブクラスを設計し、
そのオブジェクトでパネルなどのFrameを切り替える。

SoftKey1で戻り、SoftKey2で進む方針で設計する。
この切り替え用フレームには、次のそれぞれ進み先Frameとソフトキー用表示文字列を設定する次のメソッドを用意する。

public void setSoft1Frame(Frame, String)
public void setSoft2Frame(Frame, String)

以下は、この設計方針で作成したLoginPanelと、EditPanelパネルを切りかえる作品のメイン部分である。

// 再利用を考えたパネル の確認用
// 初期画面がLoginPanelで、ログインするとテキスト編集画面になる。


import com.nttdocomo.ui.*;

public class testLoginEditPnl extends IApplication {
	LoginPanel loginPanel;
	EditPanel editPanrl;

	public void start(){
		//使用するパネルを全て生成
		loginPanel = new LoginPanel(this, "ログイン");
		editPanrl = new EditPanel(this,"メモ");
		
		//初期のログインPanel初期化
		loginPanel.setSoft1Frame(null, "Exit");
		loginPanel.setNextFrame(editPanrl);
		
		//次のテキスト編Panel初期化 
		editPanrl.setSoft1Frame(loginPanel, "Back");

		//最初のパネルをログインパネルにする。
		Display.setCurrent(loginPanel);
	}
}

この作品は、左のLoginPanelと右のEditPanelのフレームをそれそれのパネル内に設定した切り替え先情報で切り変わる。
LoginPanel  EditPanel

なお、LoginPanelで、Daialogと、HTMLLayoutとの使用が確認でき、EditPanel内で、Ticker、Calendarクラスの使用が確認できる。

作品URLは、http://www001.upp.so-net.ne.jp/yuu/iappli/testlogineditpnl.html

メインソース:testLoginEditPnl.java
ログインパネルソース:testLoginEditPnl.java
テキスト編集パネルソース:testLoginEditPnl.java
上記パネル内のTickerソース:testLoginEditPnl.java

SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送