62,614
社区成员
发帖
与我相关
我的任务
分享
package prx.swing;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class Test extends JPanel {
public Test() {
this.add(new JButton("test"));
this.add(new JLabel("test"));
this.add(new JTextField("test"));
this.setBackground(Color.BLUE); //设置背景为蓝色
this.setBorder(BorderFactory.createLineBorder(Color.red));//红色边框
this.setPreferredSize(new Dimension(300, 300));
}
protected void paintComponent(Graphics g) {
// super.paintComponent(g); //只会影响Test本身的绘制,不会影响边框和其他组件,取消注释将看到蓝色背景。
g.fillRect(0, 0, 100, 100);
}
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(new Test());
frame.pack();
frame.setVisible(true);
}
}