filteredimagetest.java

来自「java编程开发技巧与实例的编译测试通过的所有例程」· Java 代码 · 共 48 行

JAVA
48
字号
import java.awt.FlowLayout;
import java.awt.Image;
import java.awt.image.*;
import java.awt.event.*;
import javax.swing.*;

public class FilteredImageTest extends JFrame implements ActionListener
{
	private	ImageIcon colorVersion	=	null;
	private ImageIcon grayVersion	=	null;
	private JButton color	=	new JButton("Color");
	private JButton gray	=	new JButton("Gray");
	private	JLabel display	=	new JLabel();
	
	public FilteredImageTest()
	{
		super("Image Test");
		Image colorImage	=	getToolkit().getImage("3962717.jpg");
		Image grayImage	=	createImage(new FilteredImageSource(colorImage.getSource(),
											new GrayFilter(true, 50)));
		colorVersion	=	new ImageIcon(colorImage);
		grayVersion		=	new ImageIcon(grayImage);
		JPanel buttons	=	new JPanel(new FlowLayout());
		buttons.add(color);
		color.addActionListener(this);
		buttons.add(gray);
		gray.addActionListener(this);
		display.setIcon(colorVersion);
		getContentPane().add("Center", display);
		getContentPane().add("South", buttons);
		validate();
		pack();
		setLocationRelativeTo(this);
		setVisible(true);
	}
	public void actionPerformed(ActionEvent ae)
	{
		if (ae.getSource() == color)
			display.setIcon(colorVersion);
		else if (ae.getSource() == gray)
			display.setIcon(grayVersion);
	}
	public static void main(String args[])
	{
		FilteredImageTest sit	=	new FilteredImageTest();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?