如何更改jDesktopPane的背景颜色,这是在netbeans中创建的使用工具
通过unsing netbeans ide,我在JFrame
创建了一个JDesktopPane
。 我无法改变jdesktopPane的颜色..我尽我所能。 但是当我打开JFrame
时, JFrame
里面的JDesktopPane
处于一些蓝色背景中。
请帮我改变JDesktopPane
的背景
我假设你正在使用具有默认Nimbus外观的GUI Builder(因为你说你已经尝试了所有东西,我会假设你已经尝试过setBackground
)。 外观具有背景设置。 但你可以选择它。
-
你可以画背景。 您想查看此答案 ,了解如何编辑自动生成的代码。 然后你可以在编辑代码时使用它。 别忘了打
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()); } };
-
如果需要图像,可以绘制图像
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); } };
-
您还可以覆盖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); } }