java swing 点击按钮重绘界面
时间: 2023-08-02 13:08:56 浏览: 155
按钮的重绘
您可以通过在按钮的事件处理方法中调用 `repaint()` 方法来实现点击按钮后重绘界面。
首先,您需要创建一个继承自 `JFrame` 的主窗口类,并在其中添加一个按钮。然后,为按钮添加一个动作监听器,监听按钮的点击事件。
在按钮的动作监听器中,您可以重写 `actionPerformed()` 方法,在该方法中调用 `repaint()` 方法来触发界面的重绘。
下面是一个简单的示例代码:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class MainFrame extends JFrame {
private JButton button;
public MainFrame() {
button = new JButton("点击重绘");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 在按钮点击事件中调用repaint()方法
repaint();
}
});
// 将按钮添加到主窗口中
getContentPane().add(button);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(200, 200);
setVisible(true);
}
@Override
public void paint(Graphics g) {
super.paint(g);
// 在重绘方法中绘制界面的其他组件或图形
g.setColor(Color.RED);
g.drawRect(50, 50, 100, 100);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new MainFrame();
}
});
}
}
```
在上述代码中,当点击按钮时,`actionPerformed()` 方法中的 `repaint()` 方法会被调用,从而触发 `paint()` 方法的执行,进而绘制界面上的矩形。您可以根据需要在 `paint()` 方法中绘制界面的其他组件或图形。
阅读全文