关于Swing JPopupMenu的选择项返回值问题。。JMenuItem copy = new JMenuItem("コピー");
JMenuItem paste = new JMenuItem("貼り付け");
copy.setEnabled(true);
peast.setEnabled(true);
popupmenu.add(copy);
popupmenu.add(paste);
popupmenu.show(e.getComponent(), e.getX(), e.getY());popupmenu.addPopupMenuListener(new PopupMenuListener() { public void popupMenuCanceled(PopupMenuEvent arg0) {} public void popupMenuWillBecomeInvisible(PopupMenuEvent arg0) {
//我想在这里获得Popup选择的项
//如果选择Copy返回个东东
//如果选择paste也返回一个东西
if (Copy){
//............................
}
if (paste){
//............................
} } public void popupMenuWillBecomeVisible(PopupMenuEvent arg0) {}
});
JMenuItem paste = new JMenuItem("貼り付け");
copy.setEnabled(true);
peast.setEnabled(true);
popupmenu.add(copy);
popupmenu.add(paste);
popupmenu.show(e.getComponent(), e.getX(), e.getY());popupmenu.addPopupMenuListener(new PopupMenuListener() { public void popupMenuCanceled(PopupMenuEvent arg0) {} public void popupMenuWillBecomeInvisible(PopupMenuEvent arg0) {
//我想在这里获得Popup选择的项
//如果选择Copy返回个东东
//如果选择paste也返回一个东西
if (Copy){
//............................
}
if (paste){
//............................
} } public void popupMenuWillBecomeVisible(PopupMenuEvent arg0) {}
});
final JMenuItem paste = new JMenuItem("貼り付け");
copy.setEnabled(true);
peast.setEnabled(true); ActionListener listener = new ActionListener() { @Override
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if( source == copy ) {
// ...
}
else if( source == paste ) { // ...
}
}
}copy.addActionListener(listener);
paste.addActionListener(listener);popupmenu.add(copy);
popupmenu.add(paste);// ...