【问题标题】:How to get JInternalFrame Titlebar properly styled by Insubstantial如何让 Insubstantial 正确设置 JInternalFrame 标题栏的样式
【发布时间】:2011-11-09 13:10:46
【问题描述】:

我在 Insubstantial 7.0 下对 JInternalFrames 的样式有疑问。我正在为 Swing 使用 Eclipse 和 WindowBuilder。在 Widowbuilder 预览中,拖放到 DesktopPane 的 JInternalFrames 有一个漂亮的闪亮标题栏(使用 GraphiteGlassSkin)。但是当我启动程序时,所有 JInternalFrames 的标题栏和客户空间都被绘制成相同的灰色,没有任何区别。

如何让这些标题栏在运行时闪亮?

最好的问候,

大卫

【问题讨论】:

    标签: java swing jinternalframe substance


    【解决方案1】:

    在运行时你可以更改LookAndFeel

    1) 然后你必须打电话给SwingUtilities.updateComponentTreeUI(Top-Level Container);

    2)如果有一些Backgroung Task,你必须将代码包装到invokeAndWait(),如果没有/没有任何Backgroung Task,那么使用invokeLater()成功

    SwingUtilities.invokeLater(new Runnable() {
    
        @Override
        public void run() {
            try {
                UIManager.setLookAndFeel(new GraphiteGlassSkinLookAndFeel());
                SwingUtilities.updateComponentTreeUI(frame);
            } catch (UnsupportedLookAndFeelException e) {
                throw new RuntimeException(e);
            }
        }
    });
    

    【讨论】:

    • 非常感谢。不幸的是,它对我不起作用。看来,titlePane 根本没有实例化。
    • 一些主题改变了例如SubstanceOfficeSilver2007LookAndFeel,如果您下载 Substance 的代码源,那么在 java 文件夹 -> Check.java 是这个世界上自定义 Java 外观的最佳指南 :-)
    • 投反对票,因为这是对有关两个特定工具和外观的特定问题的通用外观回答。这个答案不会解决任何问题。
    猜你喜欢
    • 2017-10-31
    • 2019-03-20
    • 2012-01-25
    • 1970-01-01
    • 1970-01-01
    • 2020-06-21
    • 2012-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多