Я довольно новичок в java, поэтому терпите меня, пожалуйста, в принципе, ниже, у меня есть панель с вкладками для каждой из четырех комнат в Arraylist комнат, и я создаю кнопки на каждой вкладке, в зависимости от того, сколько ламп имеет каждая комнатаКак можно связать кнопки на каждой вкладке с указанными номерами?Например, когда я нажимаю световую кнопку на вкладке «Комната 1», слушатель событий знает, что кнопка принадлежит комнате1?
Любая помощь приветствуется, спасибо.
import java.util.ArrayList;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class MasterGUI extends JFrame implements ActionListener{
public MasterGUI(){
}
public void DisplayFrame(){
ArrayList<Rooms> rooms;
rooms = Building.getRoomList();
JFrame master = new JFrame("Solar Master Control Panel");
master.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container content = master.getContentPane();
content.setBackground(Color.lightGray);
JTabbedPane tabbedPane = new JTabbedPane();
JPanel tmpPanel;
for(int x = 0; x < rooms.size(); x++){
tmpPanel = new JPanel();
String roomName = rooms.get(x).getName();
int id = rooms.get(x).getId();
tabbedPane.addTab(roomName + " Room " + id, tmpPanel);
}
for(int x = 0; x < rooms.size(); x++){
for(int i = 0; i < rooms.get(x).roomLights.size(); i++){
int num = i + 1;
((JPanel) tabbedPane.getComponentAt(x)).add(new JButton("Light" + num));
}
}
master.add(tabbedPane, BorderLayout.CENTER);
master.setSize(800, 600);
content.add(tabbedPane);
master.setVisible(true);
}
public void actionPerformed(ActionEvent e){
}