uTools-Manuals/docs/java/javax/imageio/IIOParamController.html

127 lines
6.2 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
javax.imageio
</div>
<h2 class="title" title="Interface IIOParamController">Interface IIOParamController</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre>public interface <span class="typeNameLabel">IIOParamController</span></pre>
<div class="block">
<span>要由可以通过放置GUI以从用户获取值或通过其他方式<code>IIOParam</code>对象的设置的对象来实现的接口。</span>
<span>此接口仅指定调用控制器的通用<code>activate</code>方法,而不考虑控制器如何获取值( <i></i> 控制器是否提供GUI或仅计算一组值与此接口无关</span>
<p> <span><code>activate</code>方法中,控制器通过查询<code>IIOParam</code>对象的<code>get</code>方法来获取初始值,通过任何方式修改值,然后调用<code>IIOParam</code>对象的<code>set</code>方法来修改适当的设置。</span> <span>通常,这些<code>set</code>方法将在最终提交时一次被调用,以便取消操作不会影响现有值。</span> <span>一般来说,应用程序可能会期望当<code>activate</code>方法返回<code>true</code>时, <code>IIOParam</code>对象可以在读或写操作中使用。</span> </p>
<p> <span>供应商可以选择为他们为特定插件定义的<code>IIOParam</code>子类提供GUI。</span> <span>这些可以在相应的IIOParam <code>IIOParam</code>类中设置为默认控制器。</span> </p>
<p> <span>应用程序可以覆盖任何默认GUI并提供自己的控制器嵌入到自己的框架中。</span> <span>所需要的只是<code>activate</code>方法的模式(不退回,直到被取消或提交),尽管它不需要提出明确的模态对话框。</span> <span>这种非模态GUI组件将大致如下编码</span> <br/></p>
<pre> <span>class MyGUI extends SomeComponent implements IIOParamController {
public MyGUI() {
// ...
setEnabled(false);
}
public boolean activate(IIOParam param) {
// disable other components if desired
setEnabled(true);
// go to sleep until either cancelled or committed
boolean ret = false;
if (!cancelled) {
// set values on param
ret = true;
}
setEnabled(false);
// enable any components disabled above
return ret;
}</span> </pre>
<p> <span>或者,诸如数据库查找或命令行解析的算法过程可以用作控制器,在这种情况下, <code>activate</code>方法将简单地查找或计算设置,调用<code>IIOParam.setXXX</code>方法,并返回<code>true</code></span> </p>
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/imageio/IIOParam.html#setController-javax.imageio.IIOParamController-"><code>IIOParam.setController(javax.imageio.IIOParamController)</code></a>
<a href="../../javax/imageio/IIOParam.html#getController--"><code>IIOParam.getController()</code></a>
<a href="../../javax/imageio/IIOParam.html#getDefaultController--"><code>IIOParam.getDefaultController()</code></a>
<a href="../../javax/imageio/IIOParam.html#hasController--"><code>IIOParam.hasController()</code></a>
<a href="../../javax/imageio/IIOParam.html#activateController--"><code>IIOParam.activateController()</code></a>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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>
</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>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/imageio/IIOParamController.html#activate-javax.imageio.IIOParam-">activate</a></span>(<a href="../../javax/imageio/IIOParam.html" title="class in javax.imageio">IIOParam</a> param)</code>
<div class="block">
激活控制器。
</div> </td>
</tr>
</tbody>
</table> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="activate-javax.imageio.IIOParam-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>activate</h4> <pre>boolean activate(<a href="../../javax/imageio/IIOParam.html" title="class in javax.imageio">IIOParam</a> param)</pre>
<div class="block">
<span>激活控制器。</span>
<span>如果返回<code>true</code> ,则<code>IIOParam</code>对象中的所有设置都应准备好在读或写操作中使用。</span>
<span>如果返回<code>false</code> ,则<code>IIOParam</code>对象中的任何设置都不会受到干扰( <i></i>用户取消了该操作)。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>param</code> - 要修改的
<code>IIOParam</code>对象。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>true</code>如果
<code>IIOParam</code>已被修改,
<code>false</code> false。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - if
<code>param</code> is
<code>null</code> or is not an instance of the correct class.
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>