当前位置: 首页>>代码示例>>Java>>正文


Java SynthUI类代码示例

本文整理汇总了Java中javax.swing.plaf.synth.SynthUI的典型用法代码示例。如果您正苦于以下问题:Java SynthUI类的具体用法?Java SynthUI怎么用?Java SynthUI使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


SynthUI类属于javax.swing.plaf.synth包,在下文中一共展示了SynthUI类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getSynthContext

import javax.swing.plaf.synth.SynthUI; //导入依赖的package包/类
private static SynthContext getSynthContext () {
    try {
        JButton dummyButton = getDummyButton();
        
        ButtonUI bui = dummyButton.getUI();
        if (bui instanceof SynthUI) {
            return ((SynthUI) bui).getContext(dummyButton);
        } else {
           throw new IllegalStateException ("I don't have a SynthButtonUI to play with"); //NOI18N
        }
    } catch (Exception e) {
        functioning = Boolean.FALSE;
        if (log) {
            e.printStackTrace();
        }
        return null;
    }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:19,代码来源:ThemeValue.java

示例2: updateBackground

import javax.swing.plaf.synth.SynthUI; //导入依赖的package包/类
/**
 * Updates the background of the text component based on whether the
 * text component is editable and/or enabled.
 *
 * @param c the JTextComponent that needs its background color updated
 */
private void updateBackground(JTextComponent c) {
    // This is a temporary workaround.
    // This code does not correctly deal with Synth (Synth doesn't use
    // properties like this), nor does it deal with the situation where
    // the developer grabs the color from a JLabel and sets it as
    // the background for a JTextArea in all look and feels. The problem
    // scenario results if the Color obtained for the Label and TextArea
    // is ==, which is the case for the windows look and feel.
    // Until an appropriate solution is found, the code is being
    // reverted to what it was before the original fix.
    if (this instanceof SynthUI || (c instanceof JTextArea)) {
        return;
    }
    Color background = c.getBackground();
    if (background instanceof UIResource) {
        String prefix = getPropertyPrefix();

        Color disabledBG =
            DefaultLookup.getColor(c, this, prefix + ".disabledBackground", null);
        Color inactiveBG =
            DefaultLookup.getColor(c, this, prefix + ".inactiveBackground", null);
        Color bg =
            DefaultLookup.getColor(c, this, prefix + ".background", null);

        /* In an ideal situation, the following check would not be necessary
         * and we would replace the color any time the previous color was a
         * UIResouce. However, it turns out that there is existing code that
         * uses the following inadvisable pattern to turn a text area into
         * what appears to be a multi-line label:
         *
         * JLabel label = new JLabel();
         * JTextArea area = new JTextArea();
         * area.setBackground(label.getBackground());
         * area.setEditable(false);
         *
         * JLabel's default background is a UIResource. As such, just
         * checking for UIResource would have us always changing the
         * background away from what the developer wanted.
         *
         * Therefore, for JTextArea/JEditorPane, we'll additionally check
         * that the color we're about to replace matches one that was
         * installed by us from the UIDefaults.
         */
        if ((c instanceof JTextArea || c instanceof JEditorPane)
                && background != disabledBG
                && background != inactiveBG
                && background != bg) {

            return;
        }

        Color newColor = null;
        if (!c.isEnabled()) {
            newColor = disabledBG;
        }
        if (newColor == null && !c.isEditable()) {
            newColor = inactiveBG;
        }
        if (newColor == null) {
            newColor = bg;
        }
        if (newColor != null && newColor != background) {
            c.setBackground(newColor);
        }
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:73,代码来源:BasicTextUI.java


注:本文中的javax.swing.plaf.synth.SynthUI类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。