CardLayout(显示图片)

本文展示了一个使用Java Swing实现的简单应用,该应用通过CardLayout管理三个图像面板的切换,用户可以通过按钮进行上一张和下一张的切换操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

源代码:

package Test12;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Test04 extends JFrame implements ActionListener{
 private CardLayout cardlayout;
 private FlowLayout layout;
 private Icon icon1,icon2,icon3;
 private JLabel label[]=new JLabel[3];
 private JPanel button,image;
 private JButton previous=new JButton("上一张");
 private JButton next=new JButton("下一张");
 //private String name[]={"注意落石","车辆故障","禁止左转","最高限速"};
 private Container c;
 public Test04()
 {
  super("This is test04.java");
  c=getContentPane();
  cardlayout=new CardLayout();
  
  image=new JPanel();
  image.setLayout(cardlayout);
  icon1=new ImageIcon("E:\\MyEclipse9.0_Workspaces\\N012\\src\\Test12\\1.gif");
  icon2=new ImageIcon("E:\\MyEclipse9.0_Workspaces\\N012\\src\\Test12\\2.gif");
  icon3=new ImageIcon("E:\\MyEclipse9.0_Workspaces\\N012\\src\\Test12\\3.gif");
  label[0]=new JLabel(icon1,SwingConstants.LEFT);
  label[1]=new JLabel(icon2,SwingConstants.LEADING);
  label[2]=new JLabel(icon3,SwingConstants.LEADING);
  image.add(label[0]);
  image.add(label[1]);
  image.add(label[2]);
  
  button=new JPanel();
  button.add(previous);
  button.add(next);
  
  layout=new FlowLayout(FlowLayout.CENTER);
  c.setLayout(layout);
  c.add(button);
  c.add(image);

  previous.addActionListener(this);
  next.addActionListener(this);
  setSize(300,150);
  setVisible(true);
 }
 public void actionPerformed(ActionEvent e)
 {
  if(e.getSource()==previous)
   cardlayout.previous(image);
  if(e.getSource()==next)
   cardlayout.next(image);
 }
 public static void main(String args[])
 {
  Test04 app=new Test04();
  app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }

}

 

 运行结果1:

 

 运行结果2:

 

 运行结果3:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值