本章一步一步地剖析如何了构建一个Swing UI程序,介绍了JPanel、JButton、JFile-Chooser等组件的用法,最后通过JFrame组件组合成为用户交互界面,实现了对图像文件的显示与操作,以及UI响应用户的操作与刷新。这
本节将根据前面前四节所讲的Swing UI组件应用知识,实现一个真正的Swing UI演示,以更加贴近实际编程的方式来说明Swing中组件的应用知识。首先来介绍一下要实现的功能:通过文件对话框选择图像文件,刷新JFram
在学习JButton事件响应的知识之前,首先来看一下Swing中如何实现对用户事件的监听与处理,认识一下Swing中事件响应最重要的线程—事件分派线程。在Swing中有一个特殊的线程被称为Swing事件分配线程,如果对UI组件
介绍Swing中的JFileChoose文件选择框是因为我们经常会用来它实现选择本地图片文件,然后加载到JPanel组件中显示,JFileChoose组件类的使用方法极其简单,只要简单的三行代码就可以提供相应的文件选择对话框,代码
要想真正把读入图像的BufferedImage对象实例显示到UI上为眼睛所见,还需要使用JFrame组件,把JPanel组件实例通过add()方法加到JFrame的内容面板上。在Java Swing中只有JFrame、JDialog与JApplet属于顶层容器,其
刚接触Swing编程的读者可能对JPanel的了解并不多,常常不清楚如何在JPanel中显示图像,而网上的很多教程又是通过JLabel来作为BufferedImage实例显示组件的,这其实不是一种很好的方法,不值得推荐。在JPanel中显
上一章介绍了BufferedImageOp的一些重要知识,实现了几个常见的图像特效,本章介绍如何通过Swing UI组件显示与刷新图像。首先会介绍JAVA Swing的顶层组件JFrame,然后介绍Swing中最重要和使用频率最高的组件JP
本章重点介绍了Java 2D中关于图像方面的操作接口类BufferedImageOp,通过其实现类可以很方便地实现图像的色彩空间转换,自定义颜色查找表,卷积功能(包括边缘提取、线性模糊、高斯模糊),图像的放大与缩小、错
通过前面两节的学习,我们已经大致了解BufferedImageOp接口及其实现类的功能。实践出真知,本节将演示BufferedImageOp接口中每个实现类的实际使用场景,达到知行合一、学以致用的目的,帮助大家解决项目中遇到的
当笔者初次接触Java Image API时,在学习过程中遇到了各种各样的问题。下面整理总结一下初学者经常遇到的问题。1)图像格式支持。很多人会用Java Image API来读取tiff文件,可惜这种格式并不被支持,在JDK6中
首先来看看如何读取一个像素的RGB值。读取一个像素点的RGB值的代码如下:index = row * width + col;ta = (pixels[index] >> 24) & 0xff;tr = (pixels[index] >> 16) & 0xff;tg = (pixels[i
2 2 Java BufferedImageOp API本节将介绍Java中最常用的操作图像像素的API接口BufferedImageOp,通过它,可以实现图像像素的调整,呈现出不同的图像显示效果,并且可编辑图像内容等。2 2 1 Java BufferedIm
本例将会演示前面所讲到的关于BufferedImage对象的所有知识点,包括像素的读取、Raster对象的创建、ColorModel的使用等。下面的代码演示了通过获取鼠标位置改变图像ColorModel对象索引,从而实现图像像素自动变化
根据不同的使用场景创建一个BufferedImage对象有三种常见方法,第一种方法是创建一个全新的BufferedImage对象,直接调用BufferedImage的构造函数。这在图形绘制的程序中比较常见,其代码如下:BufferedImage bi
从前面的内容可以知道,BufferedImage对象中最重要的一个组件是ColorModel对象,最常用的实现类是IndexColorModel,下面就以此为例来演示如何创建与使用ColorModel对象。首先来看如何创建一个IndexColorModel对象
由于Raster对象是BufferedImage对象中的像素数据存储对象,因此,BufferedImage支持从Raster对象中获取任意位置(x,y)点的像素值p(x,y)。对于任意的BufferedImage对象来说,拥有越多的像素,Raster对象需要
BufferedImage是一个内存对象,当通过ImageIO read()方法读取一个图像文件时,读取到的关于图像文件的所有信息都会被存储在该API返回的BufferedImage内存对象中。此外还可以通过BufferedImage类的构造函数来创建
第1章我们一起学习了Java中的Graphics图形包基本概念与知识,本章将介绍Java中关于图像文件操作的基本知识。首先是Java 2D图像对象BufferedImage的组件构成、与图像文件之间的关系、格式支持,以及如何利用Buff
作为全书的第一章,本章主要介绍了Java Swing中关于图形GUI支持的一些基本概念与知识。从Graphics2D图形绘制引擎访问接口入手,首先介绍了Graphics2D的使用、属性设置和基本功能,接着介绍了Graphics2D图形包Ja
1 Stroke接口Stroke是Graphics2D的API接口,用来实现图形的描边修饰,在Java 2D中只有一个完成Stroke接口的类BasicStroke,如果有需要,可以自己完成Stroke接口,实现自定义的Stroke类。如何使用Stroke的实现