首先需要把你需要添加在这个jpanel上的控件添加到这个面板上`
其次`jpanel默认的是,流动布局,默认居中
如果设置了这个jpanel的布局为null,即无布局,那么需要给你添加在这个面板上的控件设置位置和尺寸大小.
最后需要设置frame的显示属性为true
JPanel默认属性 下 你是什么都看不到的。
null布局下控件都必须用绝对定位,不然就没有。
最常用的定位方法是setBounds(x, y, width, height);控件都有
if(e.getSource()==tz){
先看到一点,,对象的比较,不要使用==
JLabel 更新一下
viplog.setBounds(50,120,170,70);
viplog.addMouseListener(this);
//viplog.setEnabled(false);
this.add(viplog);
//this.add(mpanel);
viplog.updateUI(); ////////////////////////////////////////////////这
写了个简单例子没有发现问题,给你参考下:
public class Welcome extends JFrame {
static class viploginPanel extends JPanel {
viploginPanel() {
this.setLayout(null);// 没有发现问题
JButton b = new JButton("123");
b.setBounds(50, 50, 200, 200);
this.add(b);
b = new JButton("123456");
b.setBounds(250, 300, 100, 20);// 这个按钮也要显示设置bound
this.add(b);
this.setBackground(Color.white);
}
}
public static void main(String[] args) {
Welcome f = new Welcome();
f.add(new viploginPanel());
f.setSize(400, 400);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
}
}