Java对话框上显示图片

Java对话框上显示图片,第1张

其实有很多种方法可以解决显示大小的问题:

使用photoshop修改 优点是可以节省系统资源, 显示的时候,不用做处理,缺点是需要了解ps的基本 *** 作

使用JDialog 自定义对话框 优点 可以实现复杂的效果, 缺点,代码量比较多

使用ImageIcon, Image 类 实现的缩放, 优点: 纯java代码解决, 缺点: 如果大量的需要缩放, 那么可能影响程序的速度

方案3的代码如下

import javaawtImage;

import javaxswingImageIcon;

import javaxswingJOptionPane;

public class Test {

public static void main(String[] args) {

ImageIcon icon = new ImageIcon("imgs/1png"); // 得到icon对象 注意我的地址和你的不一样,注意修改!!

Image image = icongetImage(); //icon--->Image

float scale = 05f; //缩放比例 50%

int width = Mathround(icongetIconWidth()scale); // 变小 50%的宽

int height= Mathround(icongetIconHeight()scale);// 变小50%的高

Image miniIcon = imagegetScaledInstance(width, height, ImageSCALE_SMOOTH);

// image 变成指定大小 缩放模式为 SCALE_SMOOTH(平滑优先)

ImageIcon smallIcon = new ImageIcon(miniIcon);// Image--->icon

JOptionPaneshowInputDialog(null, "吃了吗?", "标题", 0, smallIcon, null, "默认值");

}

}

效果图

图1 显示比例为原图的50%

图2 显示比例为原图的120%

正好写了一个,给你看看哈

import javaawt;

import javaawtimageBufferedImage;

import javaioFile;

import javautilDate;

import javaximageioImageIO;

public class ScreenCapturer {

public static void main(String[] args) throws Exception{

Date date = new Date();

Robot rbt = new Robot();

BufferedImage bf =  rbtcreateScreenCapture(new Rectangle(1440,900));  //这是屏幕分辨率  可以根据自己的屏幕修改

File file = new File("d://"+ datetoString()replace(" ","")replace(":","")+"jpg");  //这是保存路径D盘根目录

ImageIOwrite(bf,"jpg",file);

Systemoutprintln("截图成功!保存于D盘根目录下!时间:" + datetoString());

}

}

显示效果图

eclipse里的目录如下

完整的代码和详细的注释

import javaawtBorderLayout;

import javaawtevent;

import javaxswing;

//该窗口继承与JFrame 实现了ActionListener接口

public class MyFrame extends JFrame implements ActionListener {

JButton jbShow, jbHide;//定义按钮

JTextField jtf;//定义文本框

JLabel jl;

public MyFrame() {

JPanel jpn = new JPanel();

jpnadd(new JLabel("头像"));

jl= new JLabel(getImgIcon("0"));//指定默认的头像为第0个

jpnadd(jl);

add(jpn,BorderLayoutNORTH);

JPanel jpc = new JPanel();

for (int i = 0; i <6; i++) { //准备的就6张

JButton jb = new JButton();

jbsetIcon(getImgIcon(i+""));

jbaddActionListener(this);

jbsetActionCommand(""+i);

jpcadd(jb);

}

add(jpc,BorderLayoutCENTER);

setTitle("程序");// 窗口标题

setSize(900, 320);// 窗口大小 宽900 高320

setLocationRelativeTo(null);// 窗口居中

setDefaultCloseOperation(JFrameEXIT_ON_CLOSE);// 当窗口关闭时,程序结束

}

public static void main(String[] args) {

new MyFrame()setVisible(true);

}

@Override

public void actionPerformed(ActionEvent e) {

//方法一:根据按钮顺序,获取,然后显示 ,也适合选择的是缩略图,显示的时候大图的情况,大图小图可以按照同一顺序排列

// String cmd = egetActionCommand();

// jlsetIcon(getImgIcon(cmd));

//方法二: 获取按钮上的,然后显示 适合按钮和显示头像,都是同样大小的情况

JButton jb = (JButton) egetSource();

jlsetIcon(jbgetIcon());

}

public ImageIcon getImgIcon(String index) {//根据顺序,获取图标

return new ImageIcon(thisgetClass()getResource("/img/"+index+"jpg"));

}

}

// 后台代码

list存储每张的fileid

针对每个file写输出流,写在单独的method中

// jsp侧

<c:foreach val="file" items="list">

<img src="getimageactionfileid" + "${filefileid}" />

</c:foreach>

以上就是关于Java对话框上显示图片全部的内容,包括:Java对话框上显示图片、跪求图片生成器java全代码,要求可以画图和获取屏幕并且能保存。拜托各位大神了、java怎样实现点击一个带图片按钮的,然后把按钮的图片显示在指定label上没财富值了,谢谢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10149020.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存