重新绘制界面,repaint()函数的作用

xiaoxiao2022-06-11  26

import java.awt.Color; import java.awt.Dimension; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.UIManager; public class MainFrame extends JFrame { private static final long serialVersionUID = 1L; public static void main(String args[]) { try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); MainFrame frame = new MainFrame(); frame.setVisible(true); } catch (Exception e) { } } int count; public MainFrame() { setSize(800, 600); getContentPane().setBackground(Color.WHITE); Dimension size = Toolkit.getDefaultToolkit().getScreenSize(); this.setLocation((int) (size.getWidth() - this.getWidth()) / 2, (int) (size.getHeight() - this.getHeight()) / 2); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); getContentPane().setLayout(null); final JButton btnStart = new JButton(); btnStart.setBounds(360, 15, 100, 28); getContentPane().add(btnStart); btnStart.addActionListener(new ActionListener() { public void actionPerformed(final ActionEvent e) { JLabel lblTest = new JLabel("这是内容,这里主要体现的是repaint()这个函数. " + count); getContentPane().removeAll(); getContentPane().add(btnStart); lblTest.setBounds(100, 100, 400, 200); getContentPane().add(lblTest); repaint(); count++; } }); btnStart.setText("重新绘制"); } }

 

转载请注明原文地址: https://www.6miu.com/read-4930551.html

最新回复(0)