java窗口中的外观和感觉损坏

时间:2016-05-25 19:09:07

标签: java swing look-and-feel

大家 我在Java swing应用程序中获得了损坏的组件,一旦开始使用Look and Feel类。

在我的java swing应用程序中,在使用任何外观和感觉之前,gui看起来很无聊和平坦。但是,请看这个截图

enter image description here

我开始使用Nimbus Look and feel将其添加到代码中

UIManager.put("control", new Color(210, 210, 210)) ; 
    UIManager.put("TextField.background", new Color(250, 250, 210)) ;
    UIManager.put("ComboBox.selectionBackground", new Color(250, 250, 210))      
      ;


    try {
        for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
            if ("Nimbus".equals(info.getName())) {
                UIManager.setLookAndFeel(info.getClassName());
                break;
            }
        }
    } 
    catch (Exception e) {         
    }

现在,屏幕截图上的同一个窗口已损坏

enter image description here

发生了什么事?怎么解决?有谁知道吗?

在评论中的一些回复后进行编辑。比起你们提起重新调整窗户的问题。

=============================================== ========================= 以下是它是如何完成的示例:(代码不完全是我的,许多窗口都不是由我制作的,所以我必须潜入并分析它)

    pack();
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    setSize(new Dimension(570, 700));   
    setLocation((screenSize.width-450)/2,(screenSize.height-550)/2);

有一次,我删除了pack()下面的代码,我没有损坏的GUI问题 我注意到,然而整个窗口变得比它更高更薄。

此外,关于这个问题 我使用上面的代码spinet(在try-catch中)将新的LookAndFeel提供给我的应用程序 我也可以通过-D JVM选项来完成它。什么是更好或更可接受的方式? 根据我的理解,我认为在代码中做得更好,因为我可以使用UIManager.put(key,value)来缩小新外观的特定颜色或属性。我在使用-D JVM Options时尝试过这样做,但是它没有提取它。无论我是否更改了代码中的颜色,窗口仍然看起来都是一样的。

0 个答案:

没有答案