模块  java.desktop

Class NimbusLookAndFeel

    • 构造方法详细信息

      • NimbusLookAndFeel

        public NimbusLookAndFeel()
        创建一个新的NimbusLookAndFeel。
    • 方法详细信息

      • getStyle

        public static NimbusStyle getStyle​(JComponent c,                                   Region r)
        获取与给定组件和区域关联的样式。 这永远不会返回null。 如果无法确定适当的组件和区域,则返回默认样式。
        参数
        c - 对JComponent的非null引用
        r - 对组件c的区域的非空引用
        结果
        对NimbusStyle的非null引用。
      • getName

        public String getName()
        返回标识此外观的短字符串。 该String将是未加引号的字符串“Nimbus”。
        重写:
        getName在课堂上 SynthLookAndFeel
        结果
        标识这种外观的短字符串。
      • getID

        public String getID()
        返回标识此外观的字符串。 该String将是未加引号的字符串“Nimbus”。
        重写:
        getIDSynthLookAndFeel
        结果
        标识这种外观的短字符串。
      • shouldUpdateStyleOnAncestorChanged

        public boolean shouldUpdateStyleOnAncestorChanged()
        返回的UI是否应该更新其SynthStylesSynthStyleFactory时的祖先JComponent变化。 提供SynthStyleFactory子类将基于包含层次结构中getStyle的返回值,将覆盖此方法以返回true。
        重写:
        shouldUpdateStyleOnAncestorChanged在课堂上 SynthLookAndFeel
        结果
        true
      • shouldUpdateStyleOnEvent

        protected boolean shouldUpdateStyleOnEvent​(PropertyChangeEvent ev)
        返回UI在特定事件发生时是否应更新其样式。

        当以下属性之一更改时,重写以返回true

        • "Nimbus.Overrides"
        • "Nimbus.Overrides.InheritDefaults"
        • "JComponent.sizeVariant"
        重写:
        shouldUpdateStyleOnEvent在课堂上 SynthLookAndFeel
        参数
        ev - a PropertyChangeEvent
        结果
        UI是否应该更新其样式
        从以下版本开始:
        1.7
      • register

        public void register​(Region region,                     String prefix)

        使用NimbusLookAndFeel注册第三方组件。

        区域表示组件中作为独立绘图区域的组件和区域。 一旦在NimbusLookAndFeel上注册,就可以通过getStyle方法检索这些区域的getStyle

        NimbusLookAndFeel对UIDefaults表中的条目使用标准命名方案。 在UIDefaults中为特定区域注册的每个属性,州,画家和其他默认值的密钥将以指定的prefix

        例如,假设我有一个名为JFoo的组件。 假设我以这种方式用NimbusLookAndFeel注册了这个组件:

           laf.register(NimbusFooUI.FOO_REGION, "Foo");  

        在这种情况下,我可以通过以下方式为UIDefaults注册此组件的属性:

           UIManager.put("Foo.background", new ColorUIResource(Color.BLACK)); UIManager.put("Foo.Enabled.backgroundPainter", new FooBackgroundPainter());  

        也可以使用Nimbus注册命名组件。 例如,假设您想要将名为“MyPanel”的JPanel的背景设置为与其他JPanel不同。 您可以通过执行以下操作来完成此操作:

           laf.register(Region.PANEL, "\"MyPanel\""); UIManager.put("\"MyPanel\".background", new ColorUIResource(Color.RED));  
        参数
        region - 正在注册的Synth Region。 例如Button,或ScrollBarThumb,或NimbusFooUI.FOO_REGION。
        prefix - UIDefault前缀。 例如,可能是ComboBox,或者如果是命名组件,“MyComboBox”,甚至像ToolBar。“MyComboBox”。“ComboBox.arrowButton”
      • getDerivedColor

        public Color getDerivedColor​(String uiDefaultParentName,                             float hOffset,                             float sOffset,                             float bOffset,                             int aOffset,                             boolean uiResource)
        获取派生颜色,派生颜色是共享实例,颜色值将在其父UIDefault颜色更改时更改。
        参数
        uiDefaultParentName - 父UIDefault密钥
        hOffset - 色调偏移量
        sOffset - 饱和度偏移量
        bOffset - 亮度偏移
        aOffset - alpha偏移量
        uiResource - 如果派生颜色应为UIResource, uiResource true;如果不应为,则为false
        结果
        存储的派生颜色
      • getDerivedColor

        protected final Color getDerivedColor​(Color color1,                                      Color color2,                                      float midPoint,                                      boolean uiResource)
        解码并返回一种颜色,该颜色来自两种其他颜色之间的偏移。
        参数
        color1 - 第一种颜色
        color2 - 第二种颜色
        midPoint - 颜色1和颜色2之间的偏移,值0.0是颜色 midPoint是颜色2;
        uiResource - 如果派生颜色应为UIResource, uiResource True
        结果
        派生的颜色
      • getDerivedColor

        protected final Color getDerivedColor​(Color color1,                                      Color color2,                                      float midPoint)
        解码并返回一种颜色,该颜色来自两种其他颜色之间的偏移。
        参数
        color1 - 第一种颜色
        color2 - 第二种颜色
        midPoint - 颜色1和颜色2之间的偏移,值0.0是颜色 midPoint是颜色2;
        结果
        派生的颜色,将是一个UIResource