mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-07-05 16:22:43 +08:00
198 lines
10 KiB
HTML
198 lines
10 KiB
HTML
<div class="header">
|
||
<div class="subTitle">
|
||
javax.swing.plaf.nimbus
|
||
</div>
|
||
<h2 class="title" title="Class State">Class State<T extends <a href="../../../../javax/swing/JComponent.html" title="class in javax.swing">JComponent</a>></h2>
|
||
</div><div class="contentContainer">
|
||
<ul class="inheritance">
|
||
<li><a href="../../../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
|
||
<li>
|
||
<ul class="inheritance">
|
||
<li>javax.swing.plaf.nimbus.State<T></li>
|
||
</ul> </li>
|
||
</ul>
|
||
<div class="description">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<hr/> <br/> <pre>public abstract class <span class="typeNameLabel">State<T extends <a href="../../../../javax/swing/JComponent.html" title="class in javax.swing">JComponent</a>></span>
|
||
extends <a href="../../../../java/lang/Object.html" title="class in java.lang">Object</a></pre>
|
||
<div class="block">
|
||
<p> <span>代表Nimbus内置或定制的状态。</span> </p>
|
||
<p> <span>Synth提供了几个内置状态,它们是:</span> </p>
|
||
<ul>
|
||
<li> <span>启用</span> </li>
|
||
<li> <span>鼠标移到</span> </li>
|
||
<li> <span>按下</span> </li>
|
||
<li> <span>残疾人士</span> </li>
|
||
<li> <span>专注</span> </li>
|
||
<li> <span>已选</span> </li>
|
||
<li> <span>默认</span> </li>
|
||
</ul>
|
||
<p> <span>然而,还有更多的状态可以在LookAndFeel中描述,并且根据这些不同的状态对组件进行不同的样式组件是很好的。</span> <span>例如,进度条可能是“不确定的”。</span> <span>允许将其定义为“状态”是非常方便的。</span> </p>
|
||
<p> <span>这个类,国家,旨在用于这种情况。</span> <span>简单地实现抽象#isInState方法。</span> <span>如果给定的JComponent为“处于此状态”,则返回true,否则返回false。</span> <span>该方法将被称为<em>性能敏感的循环</em> <em>多次</em> 。</span> <span>它必须很快执行。</span> </p>
|
||
<p> <span>例如,以下可能是JProgressBars的自定义“不确定”状态的实现:</span> </p>
|
||
<pre> <span><code> public final class IndeterminateState extends State<JProgressBar> { public IndeterminateState() { super("Indeterminate"); } @Override protected boolean isInState(JProgressBar c) { return c.isIndeterminate(); } } </code></span> </pre>
|
||
</div> </li>
|
||
</ul>
|
||
</div>
|
||
<div class="summary">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="constructor.summary">
|
||
<!-- --> </a> <h3>构造方法摘要</h3>
|
||
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation">
|
||
<caption>
|
||
<span>构造方法</span>
|
||
<span class="tabEnd"> </span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">Modifier</th>
|
||
<th class="colLast" scope="col">Constructor and Description</th>
|
||
</tr>
|
||
<tr class="altColor">
|
||
<td class="colFirst"><code>protected </code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/swing/plaf/nimbus/State.html#State-java.lang.String-">State</a></span>(<a href="../../../../java/lang/String.html" title="class in java.lang">String</a> name)</code>
|
||
<div class="block">
|
||
创建一个新的自定义状态。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table> </li>
|
||
</ul>
|
||
<!-- ========== METHOD SUMMARY =========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="method.summary">
|
||
<!-- --> </a> <h3>方法摘要</h3>
|
||
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
|
||
<caption>
|
||
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
|
||
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
|
||
<span class="tableTab" id="t3"><span><a href="javascript:show(4);">抽象方法</a></span><span class="tabEnd"> </span></span>
|
||
<span class="tableTab" id="t4"><span><a href="javascript:show(8);">具体的方法</a></span><span class="tabEnd"> </span></span>
|
||
</caption>
|
||
<tbody>
|
||
<tr>
|
||
<th class="colFirst" scope="col">Modifier and Type</th>
|
||
<th class="colLast" scope="col">Method and Description</th>
|
||
</tr>
|
||
<tr class="altColor" id="i0">
|
||
<td class="colFirst"><code>protected abstract boolean</code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/swing/plaf/nimbus/State.html#isInState-T-">isInState</a></span>(<a href="../../../../javax/swing/plaf/nimbus/State.html" title="type parameter in State">T</a> c)</code>
|
||
<div class="block">
|
||
获取指定的JComponent是否处于由该类表示的自定义状态。
|
||
</div> </td>
|
||
</tr>
|
||
<tr class="rowColor" id="i1">
|
||
<td class="colFirst"><code><a href="../../../../java/lang/String.html" title="class in java.lang">String</a></code></td>
|
||
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/swing/plaf/nimbus/State.html#toString--">toString</a></span>()</code>
|
||
<div class="block">
|
||
返回对象的字符串表示形式。
|
||
</div> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
|
||
<!-- --> </a> <h3>Methods inherited from class java.lang.<a href="../../../../java/lang/Object.html" title="class in java.lang">Object</a></h3> <code><a href="../../../../java/lang/Object.html#clone--">clone</a>, <a href="../../../../java/lang/Object.html#equals-java.lang.Object-">equals</a>, <a href="../../../../java/lang/Object.html#finalize--">finalize</a>, <a href="../../../../java/lang/Object.html#getClass--">getClass</a>, <a href="../../../../java/lang/Object.html#hashCode--">hashCode</a>, <a href="../../../../java/lang/Object.html#notify--">notify</a>, <a href="../../../../java/lang/Object.html#notifyAll--">notifyAll</a>, <a href="../../../../java/lang/Object.html#wait--">wait</a>, <a href="../../../../java/lang/Object.html#wait-long-">wait</a>, <a href="../../../../java/lang/Object.html#wait-long-int-">wait</a></code></li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
</div>
|
||
<div class="details">
|
||
<ul class="blockList">
|
||
<li class="blockList">
|
||
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="constructor.detail">
|
||
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="State-java.lang.String-">
|
||
<!-- --> </a>
|
||
<ul class="blockListLast">
|
||
<li class="blockList"> <h4>State</h4> <pre>protected State(<a href="../../../../java/lang/String.html" title="class in java.lang">String</a> name)</pre>
|
||
<div class="block">
|
||
<p> <span>创建一个新的自定义状态。</span> <span>指定状态的名称。</span> <span>在为任何一个特定组件设置的状态中,该名称应该是唯一的。</span> <span>状态的名称应与UIDefaults中使用的名称相符。</span> </p>
|
||
<p> <span>例如,以下是正确的:</span> </p>
|
||
<pre> <span><code> defaults.put("Button.States", "Enabled, Foo, Disabled"); defaults.put("Button.Foo", new FooState("Foo")); </code></span> </pre>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<span><code>name</code> - 用于状态的简单用户友好名称,例如“Indeterminate”或“EmbeddedPanel”或“Blurred”。</span>
|
||
<span>习惯使用骆驼盒,首字母大写。</span>
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
<!-- ============ METHOD DETAIL ========== -->
|
||
<ul class="blockList">
|
||
<li class="blockList"><a name="method.detail">
|
||
<!-- --> </a> <h3>方法详细信息</h3> <a name="toString--">
|
||
<!-- --> </a>
|
||
<ul class="blockList">
|
||
<li class="blockList"> <h4>toString</h4> <pre>public <a href="../../../../java/lang/String.html" title="class in java.lang">String</a> toString()</pre>
|
||
<div class="block">
|
||
<span class="descfrmTypeLabel">描述从类别复制: <code><a href="../../../../java/lang/Object.html#toString--">Object</a></code></span>
|
||
</div>
|
||
<div class="block">
|
||
<span>返回对象的字符串表示形式。</span>
|
||
<span>一般来说, <code>toString</code>方法返回一个“textually代表”这个对象的字符串。</span>
|
||
<span>结果应该是一个简明扼要的表达,容易让人阅读。</span>
|
||
<span>建议所有子类覆盖此方法。</span>
|
||
<p> <span>该<code>toString</code>类方法<code>Object</code>返回一个由其中的对象是一个实例,该符号字符`的类的名称的字符串<code>@</code> ”和对象的哈希码的无符号的十六进制表示。</span> <span>换句话说,这个方法返回一个等于下列值的字符串:</span> </p>
|
||
<blockquote>
|
||
<span><pre>
|
||
getClass().getName() + '@' + Integer.toHexString(hashCode())
|
||
</pre></span>
|
||
</blockquote>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="overrideSpecifyLabel">重写:</span>
|
||
</dt>
|
||
<dd>
|
||
<code><a href="../../../../java/lang/Object.html#toString--">toString</a></code>在
|
||
<code><a href="../../../../java/lang/Object.html" title="class in java.lang">Object</a></code>
|
||
</dd>
|
||
<dt>
|
||
<span class="returnLabel">结果</span>
|
||
</dt>
|
||
<dd>
|
||
对象的字符串表示形式。
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> <a name="isInState-javax.swing.JComponent-">
|
||
<!-- --> </a><a name="isInState-T-">
|
||
<!-- --> </a>
|
||
<ul class="blockListLast">
|
||
<li class="blockList"> <h4>isInState</h4> <pre>protected abstract boolean isInState(<a href="../../../../javax/swing/plaf/nimbus/State.html" title="type parameter in State">T</a> c)</pre>
|
||
<div class="block">
|
||
<p> <span>获取指定的JComponent是否处于由该类表示的自定义状态。</span> <span><em>这是一个非常性能敏感的循环。</em></span> <span>请采取适当的预防措施,以确保快速执行。</span> </p>
|
||
<p> <span>Nimbus使用此方法来帮助确定JComponent的状态。例如,JProgressBar可能存在一个自定义状态,以便在进度条<code>true</code>时返回true。</span> <span>这种方法的实现将是:</span> </p>
|
||
<pre> <span><code> return c.isIndeterminate();</code></span> </pre>
|
||
</div>
|
||
<dl>
|
||
<dt>
|
||
<span class="paramLabel">参数</span>
|
||
</dt>
|
||
<dd>
|
||
<span><code>c</code> - JComponent进行测试。</span>
|
||
<span>这将永远不会为空。</span>
|
||
</dd>
|
||
<dt>
|
||
<span class="returnLabel">结果</span>
|
||
</dt>
|
||
<dd>
|
||
true if
|
||
<code>c</code> is in the custom state represented by this
|
||
<code>State</code> instance
|
||
</dd>
|
||
</dl> </li>
|
||
</ul> </li>
|
||
</ul> </li>
|
||
</ul>
|
||
</div>
|
||
</div> |