アプリケーションでキャンバスとフォームを一緒に使用できますか? はいの場合、Canvas からフォームにアクセスするにはどうすればよいですか?
3 に答える
1
はい、両方を使用できますが、同時には使用できません。を使用して切り替えることができますDisplay.setCurrent()
。
于 2011-06-20T07:40:45.570 に答える
1
その表示 (およびフォーム) を見つけるには、MIDlet が必要です。MIDlet の参照をキャンバス コンストラクターに送信します。したがって、キャンバスは次のようになります。
class myCanvas extends Canvas implements ... {
myMIDlet myHost; // the breadcrumb
public myCanvas(... , myMIDlet host) {
myHost = host; // remember our host MIDlet
...
}
...
}
「myMIDlet」は MIDlet の名前です。
MIDlet で:
public class myMIDlet extends MIDlet implements ... {
...
Form myForm = new Form( ...
...
myCanvas ggg = new myCanvas(... , this) // <=== note the last parameter-the key to it all
...
//switch display to myCanvas
display.setCurrent(ggg);
...
}
「myCanvas」からフォームにアクセスしたい場合 (おそらくキャンバスの commandAction または keyPressed メソッドで)、次のようにします。
Display disp = myHost.getDisplay();
disp.setCurrent(myHost.myForm);
参考:
コードプロジェクト
于 2012-02-16T10:13:08.757 に答える
0
フォームをキャンバスに切り替えることができます。例えば:
canvasName c=new canvasName(this);
Display.getDisplay(this).setCurrent(c);
しかし、Canvas to Form ではわかりません。
于 2011-10-17T13:56:05.997 に答える