JAVA 核心技术 卷I 第八版 例2-2

                                       图像文件查看器



由于学校晚上没有网, 不能blog下面直接给代码,代码里面已经说明了步骤 , 并且总结:


代码:
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;

import javax.swing.ImageIcon;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
public class ImageView {
	//每一个类中一定会有一个主方法
	//这个类的作用是图片查看器
	public static void main( String args[])
	{
		EventQueue.invokeLater(new Runnable()
		{//事件队列中有一个run函数
			public void run()
			{
				JFrame frame = new ImageViewFrame();
				frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  //设置为正常关闭
				frame.setVisible(true);//设置为可见
			}
		});
	}

}
class ImageViewFrame extends JFrame
{
	private static final int DEFAULT_WIDTH = 300;
	private static final int DEFAULT_HEIGHT = 400;
	private JLabel label;
	private JFileChooser chooser;

	//同样类中是有函数的
	 public ImageViewFrame()
	 {
		 //由于JFrame类因此,可以设置名字尺寸之类的
		 setTitle("ImageView");
		 setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
		 
		 // 使用一个label 来显示图片
		 label = new JLabel();
		 add(label);
		 
		 //设置一个文件选择
		 //选择一个文件要注意的就是选择目录了
		 chooser = new JFileChooser();
		 chooser.setCurrentDirectory(new File("."));//这个函数我第一次用其实就是用来获取文件目录 的
		 
		 //下面要进行加目录条
		 JMenuBar menuBar  = new JMenuBar();
		 setJMenuBar(menuBar);//这个setJMenuBar 第一次用功能就是将menuBar加到Frame中
		 
		 //目录条有了下面要进行的就是加目录了并且加入名字
		 JMenu menu= new JMenu("File");
		 menuBar.add(menu);   //将目录加入到目录条中
		 
		 //menu 中有可以加menuItem
		 JMenuItem openItem = new JMenuItem("Open");
		 menu.add(openItem); //menu中又要加menuItem
		 //下面又必须为openItem添加事件
		 openItem.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				//事件处理show file chooser dialog
				int result = chooser.showOpenDialog(null);//这个函数第一次用
				if(result == JFileChooser.APPROVE_OPTION)
				{
					//这个也是第一次用, 表示的应该是文件选择正确
					//下面主要是得到路径名
					/*整理一下思路
					 * 1)首先要有一个继承JFrame 的类 类中有个函数
					 * 2)要有一个label 主要用来存放显示图片的
					 * 3)要有一个menubar  并将menubar 加到JFrame中
					 * 4)要有一个JMenu
					 * 5)要有一个JMenuItem
					 * 6)文件选择目录souOpendialog
					 * 7)文件选择路径
					 * 8)设置label图片
					 */
					String name = chooser.getSelectedFile().getPath();
					label.setIcon(new ImageIcon(name));
				}
			}
		});
		 //另外加入一个退出目录
		JMenuItem exitItem = new JMenuItem("Exit");
		menu.add(exitItem);
		exitItem.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				System.exit(0);
				
			}
		});
		 	 
	 }
}

wangxiaoming CSDN认证博客专家 架构 Spring Boot Redis
博客是很好的总结和记录工具,如果有问题,来不及回复,关注微信公众号:程序员开发者社区,获取我的联系方式,向我提问,也可以给我发送邮件,联系 1275801617@qq.com
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页
实付 19.89元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值