java 点击按钮在窗口中加载图片
publicclassChangeGreyextendsFrame{Imageim,tmp;intiw,ih;int[]pixels;booleanflag=false;...
public class ChangeGrey extends Frame {
Image im,tmp;
int iw,ih;
int[] pixels;
boolean flag=false;
//构造方法
public ChangeGrey(){
setBounds(400, 400, 400, 400);
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setVisible(true);
Panel pdown;
Button load,run,quit;
//添加窗口监听事件
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
new ChangeGrey().setVisible(false);
//System.exit(0);
}
});
pdown = new Panel();
pdown.setBackground(Color.lightGray);
load=new Button("装载图像");
this.add(pdown,BorderLayout.SOUTH);
pdown.add(load);
pdown.add(run);
pdown.add(quit);
load.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
jLoad_ActionPerformed(e);
}
});
});
private void setDefaultCloseOperation(int exitOnClose) {
// TODO Auto-generated method stub
}
public void jLoad_ActionPerformed(ActionEvent e){
//利用MediaTracker跟踪图像的加载
MediaTracker tracker = new MediaTracker(this);
im=Toolkit.getDefaultToolkit().getImage("picture\\cat.jpg");
tracker.addImage(im,0);
//等待图像的完全加载
try{
tracker.waitForID(0);
}catch(InterruptedException e2){ e2.printStackTrace();}
//获取图像的宽度iw和高度ih
iw=im.getWidth(this);
ih=im.getHeight(this);
pixels=new int[iw*ih];
try{
PixelGrabber pg=new PixelGrabber(im,0,0,iw,ih,pixels,0,iw);
pg.grabPixels();
}catch (InterruptedException e3) {
e3.printStackTrace();
}
//定义main方法,设置窗口的大小,显示窗口
public static void main(String[] args) {
ChangeGrey cg = new ChangeGrey();
cg.setLocation(50,50);
cg.setSize(500,400);
cg.show();
}
}
这种是固定路径的,我要做的是那种点击按钮然后出现文件夹浏览,找到图片的那种,急求
这个应该怎么改才能讲变为可以选择文件夹下面的图片? 展开
Image im,tmp;
int iw,ih;
int[] pixels;
boolean flag=false;
//构造方法
public ChangeGrey(){
setBounds(400, 400, 400, 400);
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setVisible(true);
Panel pdown;
Button load,run,quit;
//添加窗口监听事件
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
new ChangeGrey().setVisible(false);
//System.exit(0);
}
});
pdown = new Panel();
pdown.setBackground(Color.lightGray);
load=new Button("装载图像");
this.add(pdown,BorderLayout.SOUTH);
pdown.add(load);
pdown.add(run);
pdown.add(quit);
load.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
jLoad_ActionPerformed(e);
}
});
});
private void setDefaultCloseOperation(int exitOnClose) {
// TODO Auto-generated method stub
}
public void jLoad_ActionPerformed(ActionEvent e){
//利用MediaTracker跟踪图像的加载
MediaTracker tracker = new MediaTracker(this);
im=Toolkit.getDefaultToolkit().getImage("picture\\cat.jpg");
tracker.addImage(im,0);
//等待图像的完全加载
try{
tracker.waitForID(0);
}catch(InterruptedException e2){ e2.printStackTrace();}
//获取图像的宽度iw和高度ih
iw=im.getWidth(this);
ih=im.getHeight(this);
pixels=new int[iw*ih];
try{
PixelGrabber pg=new PixelGrabber(im,0,0,iw,ih,pixels,0,iw);
pg.grabPixels();
}catch (InterruptedException e3) {
e3.printStackTrace();
}
//定义main方法,设置窗口的大小,显示窗口
public static void main(String[] args) {
ChangeGrey cg = new ChangeGrey();
cg.setLocation(50,50);
cg.setSize(500,400);
cg.show();
}
}
这种是固定路径的,我要做的是那种点击按钮然后出现文件夹浏览,找到图片的那种,急求
这个应该怎么改才能讲变为可以选择文件夹下面的图片? 展开
3个回答
展开全部
//点击“装在图像” 按钮之后,执行以下语句
JFileChooser chooser = new JFileChooser(); //创建选择文件对象
chooser.setDialogTitle("请选择文件");//设置标题
chooser.setMultiSelectionEnabled(true); //设置只能选择文件
FileNameExtensionFilter filter = new FileNameExtensionFilter("jpg", "jpg");//定义可选择文件类型
chooser.setFileFilter(filter); //设置可选择文件类型
chooser.showOpenDialog(null); //打开选择文件对话框,null可设置为你当前的窗口JFrame或Frame
File file = chooser.getSelectedFile(); //file为用户选择的图片文件
//然后你自己把file用户选择的图片文件替换成你现在的那个文件
//需要引用 import javax.swing.JFileChooser和//import.javax.swing.filechooser.FileNameExtensionFilter两个包
JFileChooser chooser = new JFileChooser(); //创建选择文件对象
chooser.setDialogTitle("请选择文件");//设置标题
chooser.setMultiSelectionEnabled(true); //设置只能选择文件
FileNameExtensionFilter filter = new FileNameExtensionFilter("jpg", "jpg");//定义可选择文件类型
chooser.setFileFilter(filter); //设置可选择文件类型
chooser.showOpenDialog(null); //打开选择文件对话框,null可设置为你当前的窗口JFrame或Frame
File file = chooser.getSelectedFile(); //file为用户选择的图片文件
//然后你自己把file用户选择的图片文件替换成你现在的那个文件
//需要引用 import javax.swing.JFileChooser和//import.javax.swing.filechooser.FileNameExtensionFilter两个包
追答
im = Toolkit.getDefaultToolkit().getImage(“file”);
改为:
im = Toolkit.getDefaultToolkit().getImage(file.getPath()); //file.getPath() ;获取文件路径
//注:不要加" "双引号
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询