Panelを極めよう! (5/8)
作成:2009-12-29 19:16
更新:2009-12-29 19:16
更新:2009-12-29 19:16
■ListBoxを使ってみよう
では、実際にListBoxを使ってみましょう。ここではごく簡単な例として、項目を選択するとその項目名がLabelに表示されるサンプルをあげておきましょう。
ListBoxで項目を選択したときには、ComponentListenerでcomponentActionが呼び出されます。このとき、第2引数にはSELECTION_CHANGEDが渡されます。ここでは、ListBoxの「getSelectedIndex」というメソッドを呼び出し、現在選択されている項目のインデックス番号を取得しています。そして、「getItem」でその番号のテキストを取り出し、LabelにsetTextしています。選択項目が1つの場合は、このように「getSelectedIndexしてgetItem」というのが基本となります。
ListBoxで項目を選択したときには、ComponentListenerでcomponentActionが呼び出されます。このとき、第2引数にはSELECTION_CHANGEDが渡されます。ここでは、ListBoxの「getSelectedIndex」というメソッドを呼び出し、現在選択されている項目のインデックス番号を取得しています。そして、「getItem」でその番号のテキストを取り出し、LabelにsetTextしています。選択項目が1つの場合は、このように「getSelectedIndexしてgetItem」というのが基本となります。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ※MainPanelの修正 class MainPanel extends Panel implements ComponentListener { private Label label; private ListBox list; MainPanel() { setTitle( "Start IApplication" ); HTMLLayout layout = new HTMLLayout(); this .setLayoutManager(layout); label = new Label( "List Sample" ); this .add(label); layout.br(); list = new ListBox(ListBox.SINGLE_SELECT); list.append( "Windows" ); list.append( "Linux" ); list.append( "Mac OS X" ); this .add(list); this .setComponentListener( this ); } public void componentAction(Component source, int type, int param) { switch (type){ case ComponentListener.SELECTION_CHANGED: if (source == list){ int n = list.getSelectedIndex(); label.setText(list.getItem(n)); } break ; } } } |
※関連コンテンツ