2
JRadioButtonを取得し、ComponentPopupMenuを設定しました。JPopupMenuItem JPopupMenuをトリガーするコンポーネントを取得する
JRadioButton rdbtnTest = new JRadioButton();
rdbtnTest.setComponentPopupMenu(popupMenu);
ポップアップメニューは、1 JPopupMenuItem
とJPopupMenu
です。 JPopupMenuItem
にはMouseListener
があるため、マウスをクリックするとWebページが開きます。
JPopupMenu popupMenu = new JPopupMenu("GO");
PopupMenuListener popupMenuListener = new MyPopupMenuListener();
popupMenu.addPopupMenuListener(popupMenuListener);
MenuItem openMenuItem = new JMenuItem("Open Webpage");
openMenuItem.addMouseListener(new MouseListener() {
@Override
public void mousePressed(MouseEvent arg0) {
Component comp = arg0.getComponent(); // will only return the JPopupMenuItem
// Determine the right-clicked radio button and open webpage
}
popupMenu.add(openMenuItem);
私の質問は:私は同じポップアップメニューで別のJRadioButton rdbtnTest2
を持っている場合、私はJPopupMenuをを引き起こした2つのラジオボタンのどれかを決定することができますか?ウェブページを開くときに、ラジオボタンを右クリックした特定のパラメータを渡す必要があります。
+1は 'setComponentPopupMenu()'を使っています。 – trashgod