• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:JComboBoxでアイテムを連続して選択したいのですが・・・)

JComboBoxでアイテムを連続して選択する方法とは?

このQ&Aのポイント
  • JComboBoxでアイテムを連続して選択する方法について教えてください。
  • 選択アイテムが正しく反映されない現象や連続して同じアイテムを選択できない問題が発生しています。
  • 最初に指定したアイテムを選択する方法や連続して同じアイテムを選択する方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.1

>最初からItem1を選択したい場合 最初から確実にItem1を選択させておきたいならsetSelectedIndex()やsetSelectedItem()を使用するべきでしょう。 JavaDocに一番初めに何が選択されているかは書かれていなかったと思いますし、JComboBoxは編集可能にもできるはずなので、その辺はプログラマが考えてやることだと思います。 >連続して同じアイテムを選択したい場合 actionListenerを使ってみてください。同一アイテムを選択し直した場合でも呼び出されます。

anpan100k
質問者

補足

素直にactionListerを使えばよかったんですね。変にitemListerにこだわっていました。 おかげ様で無事解決できました。ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • JComboBoxの配列の作り方について

    class PdMenu extends JPanel implements ActionListener { private static final long serialVersionUID = 5962740427029989204L; /*-------------------------* * Variables. * *-------------------------*/ /*----- Pull-down menu -----*/ JComboBox[] pd=new JComboBox[10]; String[] arrDate={"00", "01", "02", "03"}; List<String> date=new ArrayList<String>(); static String[] result; /*-------------------------* * Cons. * *-------------------------*/ /*----- Creation -----*/ PdMenu() { date=Arrays.asList(arrDate); result=date.subList(0, 3).toArray(new String[]{}); for(int i=0; i<pd.length; i++){ pd[i]=new JComboBox<String>(); } pd[0]=new JComboBox<String>(result); } public void actionPerformed(ActionEvent e) { /*------*/ } } Eclipseを使用しています。 JComboBox[] pd=new JComboBox[10];の部分において、ジェネリックタイプを付けるようにと の警告が表示されている状態です。 JComboBoxの配列を作りたいのですが、ジェネリックタイプを付けると配列が作れません。 JComboBoxの配列を作る場合は、ジェネリックタイプを付ける事ができません。 警告の表示されない良い方法はありませんでしょうか? みなさま、よろしくお願いいたします。

    • ベストアンサー
    • Java
  • swingのJComboBoxについて

    コンボをクリックした場合に条件によってコンボの中身を変更したいのですが、コンボがクリックされたときのイベントは取得できるのでしょうか? コンボのアイテム選択時のイベントはとれるのですが、上記の場合は取得できません。 ご教授お願いします。

    • ベストアンサー
    • Java
  • Wordで、連続しない行を複数範囲選択したいのですが・・・

    連続してない範囲を選択するのに 「Ctrl+クリック」または「Ctrl+ドラッグ」 して指定していましたが、何が原因かわかりませんが できなくなりました。 上記のとおりにやろうとすると、 一気にそこまでの連続の範囲が指定されてしまいます。 決して間違えて「Shift」を押しているわけではありません。。。 どなたか、どうぞよろしくお願いいたします。

  • 女性のアイテム

    男性ですが、最近ニューハーフやおねえ系の人がよくテレビにでていたのと同じく自分が女性を選択した場合の像がでてきて、女性を愛せません。それでローリーさんまで行くのも手ですが、もっと外から見て男性であって違和感のない女性のアイテムってあるでしょうか。使い方などもアドバイス御願いします。

  • プログラムを補って下さい(swing)

    下記のプログラムで実装できない所がありますので補える方は教えてください 1.チェックボックスで削除を選択した、行番号をコンソールに表示したい。 2.コンボボックスで選択されたコンボボックスの文字列と選択されたコンボボックス   のインデックス番号が知りたい 以上です。 import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.lang.Class; import javax.swing.DefaultCellEditor; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableCellEditor; import javax.swing.table.TableModel; public class JTableSample1 implements ActionListener{ JComboBox comboBox; public static void main(String[] args) { new JTableSample1().init(); } public void init() { String[] title = { "削除", "String", "Integer", "JComboBox" }; String prompt = "選んで下さい"; Object[][] records = { { Boolean.FALSE, "Rachel Green", new Integer(1970), prompt }, { Boolean.FALSE, "Monica Geller", new Integer(1969), prompt }, { Boolean.FALSE, "Phoebe Buffay", new Integer(1967), prompt }, { Boolean.FALSE, "Joey Tribbiani", new Integer(1967), prompt }, { Boolean.FALSE, "Chandler Bing", new Integer(1968), prompt }, { Boolean.FALSE, "Ross Geller", new Integer(1967), prompt } }; TableModel model = new DefaultTableModel(records, title) { public Class<?> getColumnClass(int column) { return getValueAt(0, column).getClass(); } }; JTable table = new JTable(model); comboBox = new JComboBox(); comboBox.addItem("ごはん食べてる"); comboBox.addItem("テレビみてる"); comboBox.addItem("仕事してる"); comboBox.addItem("寝てる"); TableCellEditor editor = new DefaultCellEditor(comboBox); table.getColumnModel().getColumn(3).setCellEditor(editor); JFrame frame = new JFrame("Joey Table"); frame.getContentPane().add(new JScrollPane(table)); frame.setSize(640, 240); frame.setVisible(true); } public void actionPerformed(ActionEvent e) { System.out.println("選択されたコンボボックス:"+(String)comboBox.getSelectedItem()); System.out.println("選択されたコンボボックスのインデックス番号:"+comboBox.getSelectedIndex()); } }

    • ベストアンサー
    • Java
  • コンボボックスを使う時の警告

    こんにちは。 Javaでコンボボックスを使いたいのですが、コンボボックスを使うと必ず 注意:~.javaの操作は、未チェックまたは安全ではありません。 注意:詳細は、-Xlint:uncheckedオプションを指定して再コンパイルしてください。 と出てしまいます。 自分なりに調べたところ、どうもGenericsというものが解決のカギとなっているんじゃないかとにらんでいるのですがよくわかりません。 以下に警告のでるプログラムを掲載します。 public class fun extends JFrame implements ActionListener{ String[] A; JComboBox data; ------省略------ public fun(){   //コンストラクタ A = datain(); data = new JComboBox(A); ------省略------ public String[] datain() txtファイルからのデータ入力作業 } public static void main(String[] args){ new fun(); } ※入力データの例 テキストファイル  あいうえお  かきくけこ  さしすせそ  たちつてと そしてコンボボックスで選択をできるようにしたいのですが、この警告が出ないようなやり方を教えてください。よろしくお願いします。

    • ベストアンサー
    • Java
  • RED STONEのベルトアイテム

    一ヶ月前ぐらいからRED STONEを始めた者ですが、数日前からベルトアイテムの具合がおかしくなりました。 ・ベルトアイテムの中身を「装備」画面にドラッグしようとしても動かない。ただ、「装備」画面側からベルトアイテムに新アイテムをドラッグすれば交換可能。 ・前は、ベルトにセットしておいたポーションを軽くクリックしただけで使えていたのに、何度か強い力でクリックしないと消費できないようになっている。キーボード側の数字を押しても機能しない。 ・・・こんな感じです。特に、ポーションがなかなか使えないっていうのはかなり不便で、間に合わずにしんじゃったりしたことが何度もあります。 どうすれば元に戻るでしょうか? 御存知の方、よろしくお願いします。

  • コンボボックスの一部のアイテムを選択不可能に

    コンボボックスの一部のアイテムが 選択不可能な状態となるコンボボックスを作成したいのです。 以下のような感じです。 コンボボックス▼ ----果物---- りんご バナナ ----野菜---- キャベツ にんじん コンボボックスの▼部分をクリックすると リストが出てくるようなイメージです。 この[----果物----]と[----野菜----]の欄は 選択しクリックしてもリストを閉じずに無反応な状態にしたいのです。 WordやExcel2007のフォント選択ダイアログ内の [テーマのフォント]、[すべてのフォント]部分に近いイメージです。 変更時に来るイベントでどうにかしようとしましたがうまくできず、 コンボボックスクラスを自作すれば出来るのかなと思いますが、 いまいちどうして良いかわからないです。 VC++2005でMFCを使っています(CComboBox) わかる方がいらっしゃいましたらお教え頂ければ幸いです。

  • 1行の連続したデータの読込 改行なし

    開発環境 EXCEL2005 、VBA 改行のない1行の連続したデータのファイルを読み込みたいのですが。 (正確には128byteの文字列が連続して1行になったデータ) ファイルの容量は多い時もあるし少ない時もあり不定です。 この不定なのがやっかいなのですが。 現在、ファイルの中身をStr1 に入れて、 1行のデータの最初から最後まで以下の処理を繰り返すのですが。 Dim Start as Long Dim Str1 as String Start = 1 Midb(Str1,Start,128) Start = Start + 128 128Byteごとに読みだすやり方なのですが。 あまりスマートなやり方ではないような気がするのですが。 Str1の容量が、String型の最大値をこえた場合などです。 何かもっとスマートなやり方はないでしょうか? 皆様の知識をいただけたら幸いです。

  • iアプリで、配列の使い方がわからず困っています。

    iアプリで、あるクラスの配列を別のクラスで利用したいのですが、その方法がよくわかりません。 たとえば、Itemクラスの配列の任意の要素を、Testクラスで使用したい場合、どのようにすればよいのでしょうか。 ========== Item.java ========== public class Item { String Item[] = new String[700]; Item(){ Item[0] = new String("item0"); Item[1] = new String("item1"); Item[2] = new String("item2");   ・   ・   ・ Item[699] = new String("item699"); } } ========== Test.java ========== public class Test extends IApplication { public void start(){ /* Itemクラスの配列'Item'を使用するための記述がわかりません。 */ Dialog _dialog=new Dialog(Dialog.DIALOG_INFO,"Item"); _dialog.setText("Item:" + Item[258]); // ← 配列'Item'の任意の要素(Item[258])を適用したい。 _dialog.show(); terminate(); } }

    • ベストアンサー
    • Java