java實現面板之間切換功能

本文實例為大傢分享瞭java實現面板之間切換的具體代碼,供大傢參考,具體內容如下

如圖:

關鍵技術:事件監聽,設置顯示面板,重新刷新驗證。

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();
}
}

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: