- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我的应用程序有 Java Swing 界面,并且希望在左上角设置我的个人图标。
我的代码:
File fimg = new File("D:\\logo.png");
BufferedImage img = ImageIO.read(fimg);
WritableRaster raster = img.getRaster();
DataBufferByte data = (DataBufferByte) raster.getDataBuffer();
ImageIcon icon = new ImageIcon(data.getData());
setIconImage(icon.getImage());
该代码不起作用。
如果我改变这个
new ImageIcon(data.getData());//ImageIcon(byte[] x)
与
new ImageIcon(img);//图像图标(图像x)
工作正常。
如何使 ImageIcon(byte[])
工作,以便将图像存储为字节?
最佳答案
试试这个:
import java.awt.GridLayout;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.net.URL;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class SwingTest {
SwingTest() {
JFrame frame=new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(new GridLayout(1,2));
BufferedImage img = null;
try {
URL url = new URL("http://www.digitalphotoartistry.com/rose1.jpg");
img = ImageIO.read(url);
} catch (IOException ex) { ex.printStackTrace();}
ByteArrayOutputStream baos = new ByteArrayOutputStream();
try {
ImageIO.write(img, "JPEG", baos);
} catch (IOException ex) {ex.printStackTrace(); }
frame.add(new JLabel(new ImageIcon(img)));
frame.add(new JLabel(new ImageIcon(baos.toByteArray())));
frame.pack();
frame.setVisible(true);
}
public static void main (String[] agrs) {
new SwingTest();
}
}
关于Java Swing setIconImage(new ImageIcon(byte[])) 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48839941/
如何为应用程序中存在的所有框架设置图标?我不想使用frame.setIconImage(0); frame1.setIconImage(1); etc.每次我创建一个框架。 最诚挚的问候,马立克 最佳
所以在创建 JFrame 方面我还是个新手。应用。我决定通过创建一个项目的爱好来更多地了解它,一切进展顺利,我学到了很多东西,但现在我正在尝试学习如何使用 setIconImage()你知道,窗口左上
public class RType extends JFrame { private static ImageIcon ICON = new ImageIcon("craft.png"); publ
有谁知道 jFrame 的 setIconImages() (复数)方法使用哪种图标大小,以便我的应用程序图标在所有平台和所有上下文中都能很好地显示(例如,窗口图标、任务栏图标、alt-tab 图
我正在尝试使用 Eclipse 在 Java 中创建一个简单的基于 GUI 的测试工具。我一直在尝试向我的应用程序添加图标。图像存在于项目内的文件夹中。你能建议我犯了什么错误吗? 我使用下面两种方式,
我正在尝试使用 Java AWT FileDialog,但我想用其他东西替换默认的 Java Dialog 图标。简而言之,代码看起来像这样: Frame frame = new Frame(); I
我的应用程序有 Java Swing 界面,并且希望在左上角设置我的个人图标。 我的代码: File fimg = new File("D:\\logo.png"); BufferedImage im
我已经搜索了一段时间来解决这个问题。我的工作区中有一个项目文件夹(该文件夹基本上是我的根目录),其中有一个名为 icon.gif 的文件。在我的程序中,我有以下内容: package com.mgfl
我是一名优秀的程序员,十分优秀!