Java GUI实现图片切换---超详细注释讲解

Java GUI实现图片切换—超详细注释讲解

1.本文实现的是使用GUI实现六张图片的来回切换,首先在项目下准备一个image文件夹,里面放置六张图片,点击“上一张”、“下一张”按钮可以进行图片切换,并且能够判断到第一张和最后一张的位置,并弹出提示框。
在项目下新建imge文件夹,文件夹下存放(img1.jpg ---- img6.jpg)六张图片。
2.代码如下(注释已标明):

import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JLabel;
import javax.swing.ImageIcon;

public class ImageChanges extends JFrame{
	private JFrame jf;
	private JButton button1;//上一张图片按钮
	private JButton button2;//下一张图片按钮
	private JLabel label;//label用于摆放图片
	private int i = 3;//设置全局的图片张数变量,默认值为3
	ImageChanges(){
		jf = new JFrame("图片变换");
		
		label = new JLabel("");
		label.setIcon(new ImageIcon("image/img" +i + ".jpg"));//先给label添加一张默认图片,即img3.jpg
		label.setBounds(111, 44, 217, 200);//设置label的位置和大小
		jf.setBounds(700, 300, 500, 500);//设置jf的位置和大小
		jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE);//设置程序和窗口同步关闭
		jf.getContentPane().setLayout(null);//窗体绝对布局
		
	   button1 = new JButton("上一张");
	   //点击切换上一张图片
	   button1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				button2.setEnabled(true);//将“下一张”按钮设置为有效
				i--;//点击上一张,i--
				label.setIcon(new ImageIcon("image/img" + i +".jpg"));//重新为label设置新图片
				if (i == 1){//如果到达第一张,将“上一张按钮设置为失效”
					button1.setEnabled(false);
					JOptionPane.showMessageDialog(ImageChanges.this, "当前为第一张图片");//并弹出提示框
				}
			}
		});
	   button1.setBounds(111, 285, 93, 35);
	  jf.getContentPane().add(button1);
	
	    
	    button2 = new JButton("下一张");
	    //点击切换下一张图片
		button2.addActionListener(new ActionListener() {
			
			public void actionPerformed(ActionEvent e) {
				button1.setEnabled(true);//将“上一张”按钮设置为有效
				i++;
				label.setIcon(new ImageIcon("image/img" + i +".jpg"));
				if (i == 6){//如果到达最后一张,将“下一张按钮设置为失效”
					button2.setEnabled(false);//按钮设置为失效状态
					JOptionPane.showMessageDialog(ImageChanges.this, "当前浏览相册至底部");//并弹出提示框
				}
			}
		});
		button2.setBounds(232, 285, 93, 35);
		jf.getContentPane().add(button2);
		
		jf.getContentPane().add(label);
		jf.setVisible(true);//设置窗体可见
	}
	public static void main(String[] args) {
		new ImageChanges();
	}
}

3.项目文件目录设置好后,代码即可用。

你可能感兴趣的:(Java基础,java,swing,gui)