如何更改jDesktopPane的背景颜色,这是在netbeans中创建的使用工具

通过unsing netbeans ide,我在JFrame创建了一个JDesktopPane 。 我无法改变jdesktopPane的颜色..我尽我所能。 但是当我打开JFrame时, JFrame里面的JDesktopPane处于一些蓝色背景中。

请帮我改变JDesktopPane的背景

我假设你正在使用具有默认Nimbus外观的GUI Builder(因为你说你已经尝试了所有东西,我会假设你已经尝试过setBackground )。 外观具有背景设置。 但你可以选择它。

  1. 你可以画背景。 您想查看此答案 ,了解如何编辑自动生成的代码。 然后你可以在编辑代码时使用它。 别忘了打
    ctrl + shift + I之后,解决所有导入问题。 我懒得写完全合格的名字。

     jDesktopPane1 = new javax.swing.JDesktopPane() { @Override protected void paintComponent(Graphics g) { super.paintComponent(g); g.setColor(Color.BLACK); g.fillRect(0, 0, getWidth(), getHeight()); } }; 

    在此处输入图像描述

  2. 如果需要图像,可以绘制图像

     jDesktopPane1 = new javax.swing.JDesktopPane() { private Image image; { try { image = ImageIO.read(new URL("http://www.hdbackgroundspoint.com/wp-content/uploads/2013/12/16/345t34.jpeg")); } catch (IOException e) { e.printStackTrace(); } } @Override protected void paintComponent(Graphics g) { super.paintComponent(g); g.drawImage(image, 0, 0, getWidth(), getHeight(), this); } }; 

    在此处输入图像描述

  3. 您还可以覆盖Nimbus默认的DesktopPane[Enabled].backgroundPainter 。 请在此处查看Nimbus默认值

     public static void main(String[] args) { try { for (UIManager.LookAndFeelInfo laf : UIManager .getInstalledLookAndFeels()) { if ("Nimbus".equals(laf.getName())) { UIManager.setLookAndFeel(laf.getClassName()); UIManager.getLookAndFeelDefaults().put( "DesktopPane[Enabled].backgroundPainter", new DesktopPainter()); } } } catch (Exception e) { e.printStackTrace(); } SwingUtilities.invokeLater(new Runnable() { public void run() { new JDesktopPaneDemo(); } }); } static class DesktopPainter implements Painter { private Image image; public DesktopPainter() { try { image = ImageIO.read(new URL("http://www.hdbackgroundspoint.com/wp-content/uploads/2013/09/hh.jpeg")); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } @Override public void paint(Graphics2D g, JComponent object, int width, int height) { g.drawImage(image, 0, 0, width, height, null); } } 

    在此处输入图像描述