Предыстория: Пишем на занятиях RPG. Игровое поле реализовано так: двумерный массив с разного типа плитками, каждому типу плитки соответствует собственный символ(чтобы было можно, например, считать карту из txt). Создаю оконный редактор карт, в котором каждой из плиток соответствует кнопка с названием из символа соответствующей плитки(выглядит по типу Сапёра). Реализовано должно быть так, чтобы множество из n символов плиток гонялось по кругу за n нажатий на кнопку.
Вопрос: Как передать обработчику нажатия на кнопку информацию о нажатой кнопке? Экземпляр кнопки? В идеале(в идеале, потому что вся оставшаяся часть редактора уже написана из таких соображений) представляется что-то подобное:
public class TileButtonsListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
switch (currentButtonsName()) {//передаем в switch имя нажатой кнопки
case "#":
setСurrentButtonsName("O");//присваиваем нажатой кнопке новое имя
break;
case "O":
setСurrentButtonsName("B");
break;
case "B":
setСurrentButtonsName("#");
break;
default:
break;
}
Вам необходимо забирать source из ивента. Выглядеть будет так
public class TileButtonsListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
Button btn = (Button) e.getSource();
switch (currentButtonsName()) { //передаем в switch имя нажатой кнопки
case "#":
btn.setText("O"); //присваиваем нажатой кнопке новое имя
break;
case "O":
btn.setText("B");
break;
case "B":
btn.setText("#");
break;
default:
break;
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Можно ли заменить EJB бины на CDI и как это скажется на работе программы?
Привет, использую Swing для создания графических приложений, наткнулся на JavaFX, многие пишут что swing уже очень старый и вообще деревняЕсть ли что-то...
Возможно я что - то не так понимаюНо по моей логике переменная переданная в метод и дальнейшие модификации с ней должны остаться в это методе,...