JMenuItem
ボタンを含むカスタムを作成することは可能ですか? たとえば、次のようなJMenuITem
アイテムでを作成できます。
+----------------------------------------+
| JMenuItem [ Button | Button | Button ] |
+----------------------------------------+
これを行う簡単な方法があるとは思えません。次のようなことができます:
JMenuItem item = new JMenuItem("Edit ");
item.setLayout( new FlowLayout(FlowLayout.RIGHT, 5, 0) );
JButton copy = new JButton("Copy");
copy.setMargin(new Insets(0, 2, 0, 2) );
item.add( copy );
menu.add( item );
しかし、いくつかの問題があります。
a) ボタンをクリックしてもメニューが閉じません。そのため、そのコードを ActionListener に追加する必要があります
b) メニュー項目が左右の矢印などのキー イベントに応答しないため、キーボードを使用してボタンにフォーカスを当てる方法がありません。これには、メニュー項目の UI の変更が含まれますが、どこから始めればよいかわかりません。
標準の UI デザインを使用してサブメニューを作成するだけです。
個人的には、個々のメニュー項目を使用し、それらを並べて配置し、個々のボタンごとにアクションリスナーを用意します。トリッキーな部分は、JPanelのようなコンテナ内に配置し、フローレイアウトまたはグリッドレイアウトに配置することです。