我对这个动作命令和动作监听器(鼠标按下)事件不熟悉。我在我的代码中使用了这个:在Jpanel上显示信息
// This is the single event handler for all the buttons
public void actionPerformed(ActionEvent e) {
JButton selectedBtn = (JButton) e.getSource();
for (int row = 0; row < buttons.length; row++) {
for (int col = 0; col < buttons[row].length; col++) {
if (buttons[row][col] == selectedBtn) {
moves++; //incrementing the moves
System.out.printf("moves: %d%n", moves);
System.out.printf("Selected row: %d%n", row+1);
System.out.printf("Selected column: %d%n", col+1);
}
}
}
这段代码显示正确按下按钮的行和列。但我想要做的是,我试图在我的Jlabels前显示这些信息。
即如果按下一个按钮,它位于一个第2行和第4栏它应该显示这样的:
代替它示出了如本中输出控制台:
moves: 1
Selected row: 3
Selected column: 4
有关如何修改这些Jlabels以便将这些信息显示在其上的任何想法?
这些都是我的JLabel
//labels
JLabel label1 = new JLabel("COL: ");
label1.setLocation(10,260);
label1.setSize(100,100);
add(label1);
JLabel label2 = new JLabel("ROW: ");
label2.setLocation(10,280);
label2.setSize(100,100);
add(label2);
任何帮助将不胜感激:)
不确定您的确切要求。如果您只需要在框架中显示这些值,则可以对这些值使用单独的JLabels,然后更新那些在actionPerformed事件中,或者使用不可编辑的JTextFields。 –
['JLabel#setText'](https://docs.oracle.com/javase/8/docs/api/javax/swing/JLabel.html),您可能还想看看[如何使用标签](http://docs.oracle.com/javase/tutorial/uiswing/components/label.html)。请记住,您可能需要将标签作为类实例字段才能修改它们 – MadProgrammer
@Arsal Abbas您是否问如何在JLabels上显示文本? – user3437460