У меня есть кнопка запуска и опция всплывающего меню, которые делают то же самое. Возможно ли протестировать обе кнопки в одном и том же операторе if или мне нужно написать для них два отдельных оператора if?Могу ли я использовать логический оператор OR для проверки двух условий в инструкции if?
Я хочу сделать что-то вроде этого:
public void actionPerformed(ActionEvent e){
// The start button and the popup start menu option
if (e.getSource() == start)||(e.getSource() == startPopup){
new Thread() {
@Override
public void run() {
GreenhouseControls.startMeUp();
}
}.start();
* ".. или мне нужно написать для них два отдельных оператора if?" * Самый распространенный подход - написать два отдельных объекта '' ActionListener'! ** –
Я считаю, что более нормально иметь только ОДИН Объект ActionListener, но только слушайте те объекты, которые вам нужны для прослушивания. В этом случае не будет 'if' в методе' actionPerformed'; но этот «ActionListener» будет слушать кнопку «Пуск» и пункт меню «Всплывающее меню». Это делает его гораздо более гибким - вам не нужно переписывать «ActionListener», если вы решили сделать что-то вроде добавления кнопки на панели инструментов с тем же действием. –