亲宝软件园·资讯

展开

java面板之间切换

无忧# 人气:0

如图:

关键技术:事件监听,设置显示面板,重新刷新验证。

setContentPane(jp2);//设置显示的新面板
revalidate();//重新验证

完整代码如下:

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.JPanel;
public class ceshi2 extends JFrame{
    JButton b1;
    JButton b2;
    JButton b3;
    JButton b4;
public ceshi2() {
    setBounds(200, 150, 500, 300);//设置窗体大小,位置。
    JPanel jp1=new JPanel();//设置两个面板
    JPanel jp2=new JPanel();
    b1=new JButton("下一步");
    b2=new JButton("路人甲");//按钮2和4,标签1和2显示成果
    b3=new JButton("上一步");
    b4=new JButton("路人乙");
    JLabel l1=new JLabel("这是第一个面板");
    JLabel l2=new JLabel("这是第二个面板");
    b1.setBounds(20, 20, 100, 40);
    b2.setBounds(20, 120, 100, 40);
    b3.setBounds(20, 20, 100, 40);
    b4.setBounds(20, 120, 100, 40);
    l1.setBounds(100, 300, 200, 50);
    l2.setBounds(100, 300, 200, 50);
    jp1.add(b1);//添加到面板1中
    jp1.add(b2);
    jp1.add(l1);
    jp2.add(l2);//添加到面板2中
    jp2.add(b3);
    jp2.add(b4);
    add(jp1);//首先显示的是面板1
    b1.addActionListener(new ActionListener() {//添加监听
        
        @Override
        public void actionPerformed(ActionEvent e) {
            // TODO Auto-generated method stub            
            setContentPane(jp2);//设置显示的新面板
            revalidate();//重新验证
            
        }
    });
    b3.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            // TODO Auto-generated method stub            
            setContentPane(jp1);
            revalidate();
        }
    });
    setVisible(true);
    setLayout(null);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args) {
    new ceshi2();
}
}

加载全部内容

相关教程
猜你喜欢
用户评论