【问题标题】:How to improve look and feel of JAVA swing GUI?如何改善 JAVA swing GUI 的外观和感觉?
【发布时间】:2011-02-05 05:44:24
【问题描述】:

我正在开发一个使用 Java Swing 的项目。 Java Swing GUI 的默认外观非常乏味。有什么方法可以让我使用更好的外观和感觉?网页上的东西...

【问题讨论】:

  • 转移到 Silverlight :-)(这是个笑话)
  • 您好,您的所有回答都非常有帮助。现在我为我的大脑准备了一些食物。我会尝试所有这些事情并选择看起来更好的选择;)。非常感谢!

标签: java swing look-and-feel


【解决方案1】:

您可以设置外观以反映平台:

try { 
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
    e.printStackTrace();
}

如果这对您来说不够好,请查看SWT for Eclipse

【讨论】:

  • 可能是最简单的推荐。运气好的话,它可能正是 OP 想要的!
  • 嗨,弗雷德里克,我试过了。非常感谢您的帮助。这是我想要的。
  • 这是一个很好的开箱即用的解决方案。在第一次尝试中工作。无法阻止自己投票
【解决方案2】:

查看 Java tutorial for setting the look and feel。除了那里提到的那些,最近的 Java 6 版本还包括 Nimbus Look and Feel

【讨论】:

    【解决方案3】:

    Substance 是一个非常可配置的现代 LAF:

    https://github.com/kirill-grouchnikov/substance

    【讨论】:

      【解决方案4】:

      如果您擅长使用 Photo shop,您可以将 JFrame 声明为未装饰并创建您自己的图像,该图像将用作您的自定义 GUI。

      在此示例中,将 JFrame 称为框架。

      JFrame frame = new JFrame();
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(800, 600);
      //If you want full screen enter frame.setExtendedState(JFrame.MAXIMIZE_BOTH);
      frame.setUndecorated(true);
      

      现在 JFrame 有自己的边框和自定义 GUI,如果您为最小化、最大化和退出定义了自己的自定义按钮,则需要在按钮上放置一个 JPanel 并声明这些按钮将在动作侦听器函数中执行的操作(大声笑对不起......我不知道它是像c ++还是类这样的函数......) 例如,我们将 JPanel 称为面板,我们将设置一个退出按钮。

      panel.addActionListener(new ActionListener(){
      @Override
      public void actionPerformed(ActionEvent e){
      System.exit(JFrame.EXIT_ON_CLOSE);
      });
      }
      

      【讨论】:

        【解决方案5】:

        你可以看看here。我用谷歌搜索了 java swing 主题。

        也就是说,如果您正在制作一个爱好项目,那么更改 LAF 是没有问题的。如果您正在为您的伙伴制作软件,这也不是问题。如果您为客户制作软件,请保持 Swing 默认。它运作良好,并不太令人兴奋:)

        【讨论】:

        • 其实我想说的是,从默认的 Metal L&F 更改为系统 L&F 对大多数客户来说会更好。
        • @Michael Borgwardt 好的。我同意你的看法。我实际上想说的是,对于大多数用户来说,无聊的 GUI 并不是真正的问题,他们实际上喜欢标准的东西。
        • 我认为这是一个公平的说法。我的经验是,用户在看到他不熟悉的 gui 时会感到害怕。他们需要一些可以与之相关的东西。这也提高了可用性。
        • 是的,它确实提高了可用性。在 Metal LaF 中,enter 键在获得焦点时不会执行按钮操作,而本机 Windows LaF 会执行,这是 Windows 用户所期望的。
        【解决方案6】:

        另一个选项是Plastic Look-and-feel。它为 Swing 应用程序提供了类似于 XP 的外观,并提供了许多自定义选项。

        编辑:我刚刚注意到该页面上的图像已损坏。如果您点击JGoodies Looks page,您至少会看到 3 个示例,说明您可以通过这些外观完成什么。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2012-08-27
          • 1970-01-01
          • 1970-01-01
          • 2011-09-07
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多