📄 cardlayoutdemo.java
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class CardLayoutDemo extends JFrame
implements ActionListener {
private JPanel panel1;
private JButton btnNext;
private JPanel panel2;
private JButton btnPrev;
private JButton btnLast;
private JPanel panel3;
private JLabel lbInfo;
private JButton btnFirst;
private Container container;
private CardLayout Layout;
public CardLayoutDemo() {
super("卡片布局");
this.setSize(300,200);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
}
public void setLayout(){
Layout=new CardLayout();
container=getContentPane();
container.setLayout(Layout);
panel1=new JPanel();
btnNext=new JButton("下一个");
//注册事件监听器
btnNext.addActionListener(this);
panel1.add(btnNext);
//添加第一张卡片
container.add(panel1,"First");
panel2=new JPanel();
btnPrev=new JButton("上一个");
//注册事件监听器
btnPrev.addActionListener(this);
btnLast=new JButton("最后一个");
//注册事件监听器
btnLast.addActionListener(this);
panel2.add(btnPrev);
panel2.add(btnLast);
//添加第二张卡片
container.add(panel2,"Second");
JPanel panel3=new JPanel();
lbInfo=new JLabel("最后一页");
btnFirst=new JButton("第一页");
//注册事件监听器
btnFirst.addActionListener(this);
panel3.add(lbInfo);
panel3.add(btnFirst);
//添加第三张卡片
container.add(panel3,"Last");
}
public static void main(String[] args){
CardLayoutDemo CardLayoutFrame = new CardLayoutDemo();
CardLayoutFrame.setLayout();
CardLayoutFrame.show();
}
//事件处理
public void actionPerformed(ActionEvent e) {
//判断用户是否单击了下一个按钮。
if(e.getSource() ==btnNext){
//显示下一张卡片
Layout.next(container);
}
//判断用户是否单击了上一个按钮。
else if(e.getSource()==btnPrev){
//显示上一张卡片
Layout.previous(container);
}
//判断用户是否单击了最后一个按钮。
else if(e.getSource()==btnLast){
//显示最后一张卡片
Layout.last(container);
}
//判断用户是否单击了第一个按钮。
else if(e.getSource() ==btnFirst){
//显示第一张卡片
Layout.first(container);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -