101 lines · 4.3 KB · HTML
RawDownload
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><html><head><!--Copyright (c) 1998, 2001, Oracle and/or its affiliates. All rights reserved.DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. This code is free software; you can redistribute it and/or modify itunder the terms of the GNU General Public License version 2 only, aspublished by the Free Software Foundation.  Oracle designates thisparticular file as subject to the "Classpath" exception as providedby Oracle in the LICENSE file that accompanied this code. This code is distributed in the hope that it will be useful, but WITHOUTANY WARRANTY; without even the implied warranty of MERCHANTABILITY orFITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public Licenseversion 2 for more details (a copy is included in the LICENSE file thataccompanied this code). You should have received a copy of the GNU General Public License version2 along with this work; if not, write to the Free Software Foundation,Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USAor visit www.oracle.com if you need additional information or have anyquestions.--> </head><body bgcolor="white"> Provides user interface objects built according to the cross-platformNimbus look and feel. <p>Nimbus uses instances of the {@link javax.swing.Painter} interface to paintcomponents. With each Swing component it associates a foreground and abackground {@code Painter}, and there may be several painters for differentcomponent states. <p>Nimbus allows customizing many of its properties, including painters, byaltering the {@link javax.swing.UIDefaults} table. Here's an example:<code><pre>    UIManager.put("ProgressBar.tileWidth", myTileWidth);    UIManager.put("ProgressBar[Enabled].backgroundPainter", myBgPainter);    UIManager.put("ProgressBar[Enabled].foregroundPainter", myFgPainter);</pre></code> <p>Per-component customization is also possible. When rendering a component,Nimbus checks its client property named "Nimbus.Overrides". The value of thisproperty should be an instance of {@code UIDefaults}. Settings from that tableoverride the UIManager settings, but for that particular component instanceonly. An optional client property, "Nimbus.Overrides.InheritDefaults" of typeBoolean, specifies whether the overriding settings should be merged withdefault ones ({@code true}), or replace them ({@code false}). By default theyare merged:<code><pre>    JProgressBar bar = new JProgressBar();    UIDefaults overrides = new UIDefaults();    overrides.put("ProgressBar.cycleTime", 330);    ...    bar.putClientProperty("Nimbus.Overrides", overrides);    bar.putClientProperty("Nimbus.Overrides.InheritDefaults", false);</pre></code> <p>Colors in Nimbus are derived from a core set of<a href="doc-files/properties.html#primaryColors">primary colors</a>. There are also<a href="doc-files/properties.html#secondaryColors">secondary colors</a>, which arederived from primary ones, but serve themselves as base colors for otherderived colors. The derivation mechanism allows for runtime customization,i.e. if a primary or secondary color is changed, all colors that are derivedfrom it are automatically updated. The method{@link javax.swing.plaf.nimbus.NimbusLookAndFeel#getDerivedColor(java.lang.String, float, float, float, int, boolean)}may be used to create a derived color. <p>These classes are designed to be used while thecorresponding <code>LookAndFeel</code> class has beeninstalled(<code>UIManager.setLookAndFeel(new <i>XXX</i>LookAndFeel())</code>).Using them while a different <code>LookAndFeel</code> is installedmay produce unexpected results, including exceptions.Additionally, changing the <code>LookAndFeel</code>maintained by the <code>UIManager</code> without updating thecorresponding <code>ComponentUI</code> of any<code>JComponent</code>s may also produce unexpected results,such as the wrong colors showing up, and is generally notencouraged. <p><strong>Note:</strong>Most of the Swing API is <em>not</em> thread safe.For details, see<a href="http://java.sun.com/docs/books/tutorial/uiswing/concurrency/index.html"   target="_top">Concurrency in Swing</a>,a section in<em><a href="http://java.sun.com/docs/books/tutorial/"       target="_top">The Java Tutorial</a></em>. @since 1.7@serial exclude </body></html>

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t