core java 8 学习笔记(一) 一个简单的图片查看器的实现
2014-05-24 12:40
831 查看
第二章只是展示一下Java都能做些什么,这里是一个窗口程序,功能是可以查看图片。
先上源代码
1. 我新建了一个包,v1_chapter2,用于存放源代码;
2. 这里用到了GUI编程。一共两个类,ImageViewer和ImageViewerFrame,其中后一个是作者自己写的,继承了JFrame
3. 注意这些个空间之间的关系:JFrame(一个窗口) JLabel(用来放图片的) JFileChooser(文件选择器) JmenuBar(上面的菜单栏) JMenu(一个菜单) JMenuItem(菜单中的选项)
4. 通过openItem和exitItem这两个MenuItem调用addActionListerner来实现他们的功能。参数里是一个匿名内部类,重载了他的actionPerformed函数。
先上源代码
package v1_chapter2; import java.awt.EventQueue; import java.awt.event.*; import java.io.*; import javax.swing.*; /* * an image viewer program * @author not Halfish Zhang * @version 1.0 2014/5/24 */ public class ImageViewer { public static void main(String [] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { // TODO Auto-generated method stub JFrame frame = new ImageViewerFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }); } } /** * a frame with a label to show an image */ class ImageViewerFrame extends JFrame { public ImageViewerFrame() { setTitle("ImageViewer"); setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT); // use a label to display the images; label = new JLabel(); add(label); //set up the file chooser chooser = new JFileChooser(); chooser.setCurrentDirectory(new File(".")); // set up the menu bar JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); JMenu menu = new JMenu("File"); menuBar.add(menu); JMenuItem openItem = new JMenuItem("Open"); menu.add(openItem); openItem.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { // TODO Auto-generated method stub // show file chooser dialog int result = chooser.showOpenDialog(null); // if file selected, set it as icon of the label if(result == JFileChooser.APPROVE_OPTION) { 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 arg0) { // TODO Auto-generated method stub System.exit(0); } }); } private JLabel label; private JFileChooser chooser; private static final int DEFAULT_WIDTH = 300; private static final int DEFAULT_HEIGHT = 400; }
1. 我新建了一个包,v1_chapter2,用于存放源代码;
2. 这里用到了GUI编程。一共两个类,ImageViewer和ImageViewerFrame,其中后一个是作者自己写的,继承了JFrame
3. 注意这些个空间之间的关系:JFrame(一个窗口) JLabel(用来放图片的) JFileChooser(文件选择器) JmenuBar(上面的菜单栏) JMenu(一个菜单) JMenuItem(菜单中的选项)
4. 通过openItem和exitItem这两个MenuItem调用addActionListerner来实现他们的功能。参数里是一个匿名内部类,重载了他的actionPerformed函数。
相关文章推荐
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- iOS学习笔记14(1)—Core Data简单介绍和实现
- (Java2D 学习笔记系列) (一)一个简单的图像填充实例及其分析理解
- Java学习笔记--解决一个类实现多个接口的问题
- Silverlight学习笔记一(理解一下机制,使用一下布局,实现一个简单的用户登录)
- Java 学习笔记--解决一个类实现多个接口的问题
- Java学习笔记——实现一个简易记事本Notepad的编写
- [shiro学习笔记]第二节 shiro与web融合实现一个简单的授权认证
- python学习笔记:"爬虫+有道词典"实现一个简单的英译汉程序
- (源码实例)通过层DIV实现,当鼠标放在链接上面,显示图片及文字 - 流星絮语 JAVA学习笔记 - CSDNBlog
- java学习笔记—实现一个类MyInputStream(28)
- linux0.11学习笔记-技术铺垫-简单AB任务切换程序(1)-实现一个简单的bootloader
- (Java2D 学习笔记系列) (一)一个简单的图像填充实例及其分析理解
- Android(java)学习笔记201:网络图片浏览器的实现(ANR)
- 《Orange's 一个操作系统的实现》学习笔记--一个简单的引导扇区
- DayDayUp之HTML5学习笔记 二 使用header、aside、section、footer实现一个简单的界面
- Java开发学习笔记之二:一个简单的Servlet
- Objective-C ,ios,iphone开发基础:快速实现一个简单的图片查看器
- JFinal学习笔记(四) 实现简单的图片上传
- 关于java打印功能的最简单实现的学习笔记