cardlayoutframe.java
来自「全部代码全部在JDK中调试成功」· Java 代码 · 共 60 行
JAVA
60 行
//CardLayoutFrame.javaimport java.awt.*;import javax.swing.*;import java.awt.event.*;public class CardLayoutFrame extends JFrame { JButton btPrevious = new JButton("前一张"); JButton btNext = new JButton("下一张"); JPanel flowPanel = new JPanel(new FlowLayout()); JPanel cardPanel = new JPanel(new CardLayout()); int currentIndex = 0; public CardLayoutFrame() { this.getContentPane().add(flowPanel,BorderLayout.SOUTH); this.getContentPane().add(cardPanel,BorderLayout.CENTER); cardPanel.add(getCard(1),"Card1"); cardPanel.add(getCard(2),"Card2"); flowPanel.add(btPrevious); flowPanel.add(btNext); ActionListener listener = new ActionListener() { public void actionPerformed(ActionEvent e) { switchCard(); } }; btPrevious.addActionListener(listener); btNext.addActionListener(listener); this.setSize(300,200); this.setTitle("GardLayoutDemo"); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.show(); } JPanel getCard(int index){ JPanel panel = new JPanel(new BorderLayout()); JLabel label = new JLabel("<HTML><h1 style=color:red>"+ "这是第"+index+"张卡片"+ "</h1></HTML>" ); label.setHorizontalAlignment(JLabel.CENTER); panel.add(label); return panel; } void switchCard(){ CardLayout cl = (CardLayout)cardPanel.getLayout(); if (currentIndex==0){ currentIndex++; cl.show(cardPanel,"Card2"); }else{ currentIndex--; cl.show(cardPanel,"Card1"); } } public static void main(String[] args) { CardLayoutFrame frame = new CardLayoutFrame(); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?