我試圖讓JLabel在單擊JButton時出現。我添加了一個動作監聽器並將該組件添加到佈局中。我在actionPerformed中單擊JButton時使用label1.setVisible(true)。我仍然無法得到它的工作。可以看一下我的代碼嗎?設置JLabel在JButton被單擊時可見可見執行
public class LearnAppMain extends JFrame implements ActionListener {
// Define variables
public JButton button1;
public JLabel label1;
public JTextField field1;
private Image image1;
private String apple = "apple.jpg";
public LearnAppMain() {
ImageIcon image1 = new ImageIcon(this.getClass().getResource(apple));
JLabel label1 = new JLabel(image1);
button1 = new JButton("A");
button1.addActionListener(this);
field1 = new JTextField(10);
// Create layout
setLayout(new FlowLayout());
// create Container
final Container cn = getContentPane();
cn.add(button1);
cn.add(field1);
cn.add(label1);
// setLayout(new FlowLayout());
setSize(250, 250);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if (e.getSource() == button1) {
label1.setVisible(true);
field1.setText("Apple");
}
}
}
我有我的主要方法在另一個類文件。我得到的錯誤引導我到label1.setVisible(true);
我見過的每個問題他們都這樣說,但我想知道是否還有其他需要添加的東西。
感謝這真的幫了大忙!我一定會考慮這些鏈接。 – 2012-02-21 02:30:45
當然,很高興它解決了! – 2012-02-21 02:33:51
@KeithKaplan:如果icyrock的帖子可以幫助您,請點擊問題旁邊的向上箭頭進行投票(正如我已經完成的那樣)。如果它解決了您的問題,請通過單擊左側的複選標記將其選爲*答案*。 – 2012-02-21 03:15:55