JAVA添加图片
1.JAVA有没有专门用于添加图片的控件?如VB中的Image控件和Pictures控件2.JAVA中的Label控件可以添加控件,但不能改变图片大小、比例,有没有什么控...
1.JAVA有没有专门用于添加图片的控件?如VB中的Image控件和Pictures控件
2.JAVA中的Label控件可以添加控件,但不能改变图片大小、比例,有没有什么控件,可以使得:所添加的图片随着控件大小的改变而改变?
“extends JLabel”,那我还不如直接用label控件…而且,怎么实现“图片大小随控件的大小改变而改变”呢? 展开
2.JAVA中的Label控件可以添加控件,但不能改变图片大小、比例,有没有什么控件,可以使得:所添加的图片随着控件大小的改变而改变?
“extends JLabel”,那我还不如直接用label控件…而且,怎么实现“图片大小随控件的大小改变而改变”呢? 展开
2个回答
展开全部
你自己看吧 以前练习的一个小程序 实现了打开本地的jpg图像文件 并改变它的大小 其他类型的图像文件也能打开
import java.awt.*;
import java.awt.event.*;
public class ImageViewer extends Frame {
//图像文件的打开 图像的缩放 打开本地资源dialog的使用
ImageViewer view = this;
Image image = null;
String dir = "";
public ImageViewer() {
super();
this.setTitle("ImageViewer");
this.setBounds(0, 0, 600, 500);
this.setVisible(true);
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
MenuBar mb = new MenuBar();
this.setMenuBar(mb);
Menu m = new Menu("菜单");
mb.add(m);
MenuItem mi1 = new MenuItem("打开文件");
mi1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
FileDialog fd = new FileDialog(view, "打开图像", FileDialog.LOAD);
fd.setFile("*.jpg");
fd.setDirectory(dir);
fd.setVisible(true);
String f = fd.getFile();
dir = fd.getDirectory();
if(f != null) {
image = Toolkit.getDefaultToolkit().getImage(dir + fd.getFile());
image = image.getScaledInstance(600, 500, Image.SCALE_SMOOTH);
}
view.repaint();
}
});
MenuItem mi2 = new MenuItem("退出");
mi2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
m.add(mi1);
m.add(mi2);
}
private void init() {
System.out.println(1);
}
public void paint(Graphics g) {
if(image != null) {
g.drawImage(image, 0, 0, this);
}
}
public static void main(String args[]) {
new ImageViewer();
}
}
import java.awt.*;
import java.awt.event.*;
public class ImageViewer extends Frame {
//图像文件的打开 图像的缩放 打开本地资源dialog的使用
ImageViewer view = this;
Image image = null;
String dir = "";
public ImageViewer() {
super();
this.setTitle("ImageViewer");
this.setBounds(0, 0, 600, 500);
this.setVisible(true);
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
MenuBar mb = new MenuBar();
this.setMenuBar(mb);
Menu m = new Menu("菜单");
mb.add(m);
MenuItem mi1 = new MenuItem("打开文件");
mi1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
FileDialog fd = new FileDialog(view, "打开图像", FileDialog.LOAD);
fd.setFile("*.jpg");
fd.setDirectory(dir);
fd.setVisible(true);
String f = fd.getFile();
dir = fd.getDirectory();
if(f != null) {
image = Toolkit.getDefaultToolkit().getImage(dir + fd.getFile());
image = image.getScaledInstance(600, 500, Image.SCALE_SMOOTH);
}
view.repaint();
}
});
MenuItem mi2 = new MenuItem("退出");
mi2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
m.add(mi1);
m.add(mi2);
}
private void init() {
System.out.println(1);
}
public void paint(Graphics g) {
if(image != null) {
g.drawImage(image, 0, 0, this);
}
}
public static void main(String args[]) {
new ImageViewer();
}
}
2009-10-11
展开全部
JAVA是非常灵活的语言,你自己稍动一下手指就能编个控件的。
class ImageBox extends JLabel ...
class ImageBox extends JLabel ...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询