/**
* Initializes button panel and related constraints for button holding purposes.
* This method contains it's own constraints so that our buttons can maintain
* their own look that is separate from the global constraints.
*/
private void addButtons() {
setLayout(new GridBagLayout());
GridBagConstraints buttonConstraints = new GridBagConstraints();
JButton lButton, mButton, rButton;
lButton=new JButton("File");
mButton=new JButton("Reset");
rButton=new JButton("Quit");
rButton.setActionCommand("Quit");
rButton.addActionListener(this);
rButton.setToolTipText("Click to exit the game");
mButton.setActionCommand("Reset");
mButton.addActionListener(this);
mButton.setToolTipText("Click to reset all game peices");
JPopupMenu newButton = new JPopupMenu();
JMenuItem menu1 = new JMenuItem("Load");
menu1.addActionListener(this);
newButton.add(menu1);
JMenuItem menu2 = new JMenuItem("Save");
menu2.addActionListener(this);
newButton.add(menu2);
lButton.setToolTipText("Right click for menu options");
buttonPanel_.add(lButton);
buttonPanel_.add(mButton);
buttonPanel_.add(rButton);
lButton.setComponentPopupMenu(newButton);
buttonConstraints.anchor = GridBagConstraints.NORTH;
buttonConstraints.insets = new Insets(0, 0, 0, 0);
buttonConstraints.weightx = 0;
buttonConstraints.weighty = 0.2;
buttonConstraints.gridx = 1;
buttonConstraints.gridy = 0;
add(buttonPanel_, buttonConstraints);
return;
}
Я работаю над проектом для моего класса дизайна программного обеспечения. Мы добавляем функцию сохранения / загрузки файла в созданную нами игру. Мы используем JPopupMenu, чтобы опустить обе эти опции, когда нажимаем крайнюю левую кнопку в окне игры, называемую «Файл».
В настоящий момент, как и раньше, функциональность работает только при щелчке правой кнопкой мыши по кнопке «Файл». Я искал простой и элегантный способ добавить эту функцию к левому щелчку или поменять правый щелчок левой кнопкой мыши. Есть ли способ обойтись без добавления целой связки дополнительного кода? (Попытка сделать это максимально упорядоченным)