请问在java中如何显示图象? 如果只是单纯的用打开文件对话框打开一个图片文件,应该没问题,如果要靠JAVA来显示,恐怕不行. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以的,可以用JFileChooser来打开任何图片文件,并且把这些图片显示在能够容纳图片的容器中,比如:JTextPane时可以显示出来啦 下面是一个例子,你Copy过去运行,它可以选择图片显示,并且放大和缩小。import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.io.*;public class testImage extends JFrame { JButton shrink = new JButton(); JButton expand = new JButton(); JLabel jLabel1 = new JLabel(); JPanel jp1=new JPanel(); ImageIcon ic; BorderLayout borderLayout1 = new BorderLayout(); JButton jBrowse = new JButton(); String filepath=""; public testImage() { try { jbInit(); setSize(400,300); setVisible(true); } catch(Exception e) { e.printStackTrace(); } } public static void main(String[] args) { testImage testImage1 = new testImage(); testImage1.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); }}); } private void jbInit() throws Exception { shrink.setText("Shrink"); shrink.addActionListener(new testImage_shrink_actionAdapter(this)); this.getContentPane().setLayout(borderLayout1); expand.setText("Expand"); expand.addActionListener(new testImage_expand_actionAdapter(this)); jLabel1.setText(""); jBrowse.setText("选择图片"); jBrowse.addActionListener(new testImage_jBrowse_actionAdapter(this)); jp1.add(expand); jp1.add(shrink); jp1.add(jBrowse, null); this.getContentPane().add(jp1,BorderLayout.SOUTH); String filename="c:\\172.gif"; ic=new ImageIcon(filename) ; int height=ic.getIconHeight();//719 int width=ic.getIconWidth();//598 Image ia=ic.getImage(); Image ib=ia.getScaledInstance(350,260,10); ImageIcon ica=new ImageIcon(ib); jLabel1.setSize(width,height); jLabel1.setIcon(ica); this.getContentPane().add(jLabel1, BorderLayout.NORTH); } void shrink_actionPerformed(ActionEvent e) { Image ia=ic.getImage(); Image ib=ia.getScaledInstance(200,100,10); ImageIcon ica=new ImageIcon(ib); jLabel1.setIcon(ica); repaint(); } void expand_actionPerformed(ActionEvent e) { Image ia=ic.getImage(); Image ib=ia.getScaledInstance(400,300,10); ImageIcon ica=new ImageIcon(ib); jLabel1.setIcon(ica); repaint(); } void jBrowse_actionPerformed(ActionEvent e) { JFileChooser chooser = new JFileChooser(); if(JFileChooser.APPROVE_OPTION==chooser.showOpenDialog(this)) { String strSelectedPath=chooser.getSelectedFile().getPath(); filepath=strSelectedPath; ic=new ImageIcon(filepath) ; int height=ic.getIconHeight();//719 int width=ic.getIconWidth();//598 jLabel1.setSize(width,height); jLabel1.setIcon(ic); } }}class testImage_shrink_actionAdapter implements java.awt.event.ActionListener { testImage adaptee; testImage_shrink_actionAdapter(testImage adaptee) { this.adaptee = adaptee; } public void actionPerformed(ActionEvent e) { adaptee.shrink_actionPerformed(e); }}class testImage_expand_actionAdapter implements java.awt.event.ActionListener { testImage adaptee; testImage_expand_actionAdapter(testImage adaptee) { this.adaptee = adaptee; } public void actionPerformed(ActionEvent e) { adaptee.expand_actionPerformed(e); }}class testImage_jBrowse_actionAdapter implements java.awt.event.ActionListener { testImage adaptee; testImage_jBrowse_actionAdapter(testImage adaptee) { this.adaptee = adaptee; } public void actionPerformed(ActionEvent e) { adaptee.jBrowse_actionPerformed(e); }} 如果这个图像是动态调用,而不是静态的在初始化过程中就配置好的。就有点麻烦了,因为applet的太多安全性的限制。你必须把图像进行序列化从服务器那端读过来,比较麻烦! 感谢CoolAbu等的帮助,小弟在此谢了 感谢CoolAbu等的帮助,小弟在此谢了 linux swing 求 swing美化包和主题包 关于HTML [求助]java调用MFC动态库问题 StringBuffer(int lenth)什么意思 帮忙 帮忙有实力的进 菜鸟让哦 新手,求解答. 请问我这个程序哪里错了 怎么无法运行啊?刚开始看这一部分 BYTE[]数组如何存储文件 resin "sun.tools.javac.Main"过时 关于hashCode()的问题,急! Kosling每日提问之2004.03.11!望高手指点!
import java.awt.*;
import java.awt.event.*;
import java.io.*;public class testImage extends JFrame {
JButton shrink = new JButton();
JButton expand = new JButton();
JLabel jLabel1 = new JLabel();
JPanel jp1=new JPanel();
ImageIcon ic;
BorderLayout borderLayout1 = new BorderLayout();
JButton jBrowse = new JButton();
String filepath=""; public testImage() {
try {
jbInit();
setSize(400,300);
setVisible(true);
}
catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
testImage testImage1 = new testImage();
testImage1.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}); }
private void jbInit() throws Exception {
shrink.setText("Shrink");
shrink.addActionListener(new testImage_shrink_actionAdapter(this));
this.getContentPane().setLayout(borderLayout1);
expand.setText("Expand");
expand.addActionListener(new testImage_expand_actionAdapter(this));
jLabel1.setText("");
jBrowse.setText("选择图片");
jBrowse.addActionListener(new testImage_jBrowse_actionAdapter(this));
jp1.add(expand);
jp1.add(shrink);
jp1.add(jBrowse, null);
this.getContentPane().add(jp1,BorderLayout.SOUTH); String filename="c:\\172.gif";
ic=new ImageIcon(filename) ;
int height=ic.getIconHeight();//719
int width=ic.getIconWidth();//598
Image ia=ic.getImage();
Image ib=ia.getScaledInstance(350,260,10);
ImageIcon ica=new ImageIcon(ib);
jLabel1.setSize(width,height);
jLabel1.setIcon(ica);
this.getContentPane().add(jLabel1, BorderLayout.NORTH); } void shrink_actionPerformed(ActionEvent e) {
Image ia=ic.getImage();
Image ib=ia.getScaledInstance(200,100,10);
ImageIcon ica=new ImageIcon(ib);
jLabel1.setIcon(ica);
repaint();
} void expand_actionPerformed(ActionEvent e) {
Image ia=ic.getImage();
Image ib=ia.getScaledInstance(400,300,10);
ImageIcon ica=new ImageIcon(ib);
jLabel1.setIcon(ica);
repaint();
} void jBrowse_actionPerformed(ActionEvent e) {
JFileChooser chooser = new JFileChooser();
if(JFileChooser.APPROVE_OPTION==chooser.showOpenDialog(this))
{
String strSelectedPath=chooser.getSelectedFile().getPath();
filepath=strSelectedPath;
ic=new ImageIcon(filepath) ;
int height=ic.getIconHeight();//719
int width=ic.getIconWidth();//598
jLabel1.setSize(width,height);
jLabel1.setIcon(ic);
} }}class testImage_shrink_actionAdapter implements java.awt.event.ActionListener {
testImage adaptee; testImage_shrink_actionAdapter(testImage adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.shrink_actionPerformed(e);
}
}class testImage_expand_actionAdapter implements java.awt.event.ActionListener {
testImage adaptee; testImage_expand_actionAdapter(testImage adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.expand_actionPerformed(e);
}
}class testImage_jBrowse_actionAdapter implements java.awt.event.ActionListener {
testImage adaptee; testImage_jBrowse_actionAdapter(testImage adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jBrowse_actionPerformed(e);
}
}