Java 小程序中的文本更新
Text Updates in Java Applet
在这段代码中,我试图在按下按钮时更新文本,但它似乎没有更新,即使按下按钮时变量的值确实发生了变化。这是代码:
public class Test extends Applet implements ActionListener
{
Button Clicker;
int CurrentClicks = 0;
public void init()
{
this.setSize(600,400);
Button Clicker = new Button("Button 1");
add(Clicker);
Clicker.addActionListener(this);
}
public void paint (Graphics g)
{
g.drawString("Test",300,50);
g.drawString(String.valueOf(CurrentClicks), 300, 100);
}
public void actionPerformed(ActionEvent ae)
{
System.out.println("Button 1 was pressed");
CurrentClicks++;
System.out.println("Current Clicks: "+CurrentClicks);
}
}
修改实例变量后需要调用repaint()
刷新容器
@Override
public void actionPerformed(ActionEvent ae) {
System.out.println("Button 1 was pressed");
CurrentClicks++;
System.out.println("Current Clicks: " + CurrentClicks);
repaint();
}
此外,请熟悉Java naming conventions。例如,建议将实例变量 CurrentClicks
命名为 currentClicks
.
在这段代码中,我试图在按下按钮时更新文本,但它似乎没有更新,即使按下按钮时变量的值确实发生了变化。这是代码:
public class Test extends Applet implements ActionListener
{
Button Clicker;
int CurrentClicks = 0;
public void init()
{
this.setSize(600,400);
Button Clicker = new Button("Button 1");
add(Clicker);
Clicker.addActionListener(this);
}
public void paint (Graphics g)
{
g.drawString("Test",300,50);
g.drawString(String.valueOf(CurrentClicks), 300, 100);
}
public void actionPerformed(ActionEvent ae)
{
System.out.println("Button 1 was pressed");
CurrentClicks++;
System.out.println("Current Clicks: "+CurrentClicks);
}
}
修改实例变量后需要调用repaint()
刷新容器
@Override
public void actionPerformed(ActionEvent ae) {
System.out.println("Button 1 was pressed");
CurrentClicks++;
System.out.println("Current Clicks: " + CurrentClicks);
repaint();
}
此外,请熟悉Java naming conventions。例如,建议将实例变量 CurrentClicks
命名为 currentClicks
.