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。