【发布时间】:2021-05-06 05:03:38
【问题描述】:
这个程序应该计算鼠标点击,但它只计算第一次。代码并不复杂,但我不明白为什么它只计算第一次点击。
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class swing {
private JLabel label;
public swing() {
JFrame frame = new JFrame("exemple");
frame.setBounds(200, 200, 200, 200);
JButton button = new JButton("clic clic");
button.addActionListener(new MyActionListener());
label = new JLabel("0");
JPanel pane = new JPanel();
pane.add(button);
pane.add(label);
frame.getContentPane().add(pane,
BorderLayout.CENTER);
frame.show();
}
private class MyActionListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
int count = 0;
count++;
label.setText("Number of Mouse Clicks = "+ count);
}
}
public static void main(String[] args) {
new swing();
}
}
【问题讨论】:
-
您总是将“计数”设置回 0。
-
将
count =0移到actionPerformed方法之外,但在侦听器类中。 -
@WJS 非常感谢!有效。如果需要,您可以将评论作为答案,我会将其标记为解决方案。
-
不。别担心。此外,@camickr 领先我几秒钟。大声笑。
标签: java swing user-interface counter