Ich versuche, die Beschriftung "Day/Time" zu jeder ersten Zeile/Spalte für jedes Raster hinzufügen. Es scheint, dass es nur zum letzten Gitter hinzufügt. Bitte beachten Sie das beigefügte Bild. Hervorgehoben in gelb sind die Gitter, wo ich will mein Label „Tag/Zeit“Wie JLabel zu jeder ersten Zeile hinzufügen, erste Spalte in JPanel
Befestigt hinzuzufügen sind der Code:
private void buildGridPanel() {
for (int countRoom=0; countRoom < roomPanels.length; countRoom++) {
roomPanels[countRoom] = new JPanel();
roomPanels[countRoom].setLayout(new GridLayout(ROW, COL));
roomPanels[countRoom].setBorder(BorderFactory.createEmptyBorder(1, 1, 1, 1));
if (countRoom == 0) {
roomPanels[countRoom].setBorder(BorderFactory.createTitledBorder(roomList[countRoom]));
} else if (countRoom == 1) {
roomPanels[countRoom].setBorder(BorderFactory.createTitledBorder(roomList[countRoom]));
} else {
roomPanels[countRoom].setBorder(BorderFactory.createTitledBorder(roomList[countRoom]));
}
for (int i = 0; i < ROW; i++) {
for (int j = 0; j < COL; j++) {
//create new panel for every grid
JPanel pan = new JPanel();
pan.setEnabled(true);
pan.setBackground(Color.WHITE);
pan.setPreferredSize(new Dimension(3, 3));
pan.setBorder(BorderFactory.createLineBorder(Color.BLACK));
// an exception to not click the top row and most left column
// headers
if (i != 0 && j != 0) {
pan.addMouseListener(new BoxListener()); // add a mouselistener to make the grid panel clickable
}
// set names for each panel for later use
if (countRoom == 0) {
pan.setName(roomList[countRoom] + "_" + i + "_" + j);
if (i == 0 && j == 0) {
pan.add(labelDayTime);
}
} else if (countRoom == 1) {
pan.setName(roomList[countRoom] + "_" + i + "_" + j);
if (i == 0 && j == 0) {
pan.add(labelDayTime);
}
} else {
pan.setName(roomList[countRoom] + "_" + i + "_" + j);
if (i == 0 && j == 0) {
pan.add(labelDayTime);
}
}
// add the panel to the room panels
roomPanels[countRoom].add(pan);
} // end for loop COL
} // end for loop ROW
// add each room panels to the center panel
centerPanel.add(roomPanels[countRoom]);
} // end for loop
}
Das hilft mir sehr! Schätze deine Hilfe! – tdel
@Tdel, froh, dass es geholfen hat. Vergessen Sie nicht, die Antwort zu akzeptieren, indem Sie auf das Häkchen klicken, damit die Leute wissen, dass das Problem gelöst wurde. – camickr