Java JDesktopPane背景和分辨率
我在这里读过一些关于改变JdesktopPane图像背景的帖子, 但它似乎不起作用: 我正在使用netbeans,因此它位于构造函数中:Java JDesktopPane背景和分辨率,java,swing,user-interface,netbeans,Java,Swing,User Interface,Netbeans,我在这里读过一些关于改变JdesktopPane图像背景的帖子, 但它似乎不起作用: 我正在使用netbeans,因此它位于构造函数中: ImageIcon icon = new ImageIcon("/gui/orange.png"); img = icon.getImage(); //this is a field Image img; theDesktop = new javax.swing.JDesktopPane() { @Override
ImageIcon icon = new ImageIcon("/gui/orange.png");
img = icon.getImage(); //this is a field Image img;
theDesktop = new javax.swing.JDesktopPane()
{
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(img, 0, 0, this);
}
在init方法中(也在构造函数中):
我是新手,所以我不能真正理解我做错了什么。
我想知道它什么时候工作——因为每台计算机可能使用不同的分辨率——背景匹配每台计算机的解决方案是什么?(例如,当用户希望窗口为最大大小时)
非常感谢你 您需要进行一些调试,我建议的第一步是分而治之。我建议您将显示图像所采取的步骤进行划分,以找出是哪个步骤导致了您的问题。我首先从磁盘读取图像,并在JOptionPane中显示ImageIcon。请注意,我自己通常在使用
ImageIO.read(…)
中读取图像,并且通常将其作为资源而不是文件获取。此外,如果仍然处于这些调试尝试的末尾,那么您将要考虑创建和发布A。请考虑一下演示如何缩放图像,同时保持其纵横比,并讨论缩放算法什么帖子?什么没用?谢谢你的帮助!问题是我忘记了这一行:getClass().getResource(…),用于从文件中读取图片。