uTools-Manuals/docs/java/javax/swing/text/NumberFormatter.html

205 lines
14 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.swing.text
</div>
<h2 class="title" title="Class NumberFormatter">Class NumberFormatter</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><a href="../../../javax/swing/JFormattedTextField.AbstractFormatter.html" title="class in javax.swing">javax.swing.JFormattedTextField.AbstractFormatter</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../javax/swing/text/DefaultFormatter.html" title="class in javax.swing.text">javax.swing.text.DefaultFormatter</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../javax/swing/text/InternationalFormatter.html" title="class in javax.swing.text">javax.swing.text.InternationalFormatter</a></li>
<li>
<ul class="inheritance">
<li>javax.swing.text.NumberFormatter</li>
</ul> </li>
</ul> </li>
</ul> </li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
All Implemented Interfaces:
</dt>
<dd>
<span><a href="../../../java/io/Serializable.html" title="java.io中的接口">Serializable</a> <a href="../../../java/lang/Cloneable.html" title="java.lang中的接口">Cloneable</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public class <span class="typeNameLabel">NumberFormatter</span>
extends <a href="../../../javax/swing/text/InternationalFormatter.html" title="class in javax.swing.text">InternationalFormatter</a></pre>
<div class="block">
<span><code>NumberFormatter</code>子类<code>InternationalFormatter</code>为数字添加特殊行为。</span>
<span>其中的专业是(仅当<code>NumberFormatter</code>不显示无效数字时才使用,例如<code>setAllowsInvalid(false)</code> </span>
<ul>
<li> <span>在任何字段中按+/- - 从与<code>DecimalFormatSymbols</code>相关联的<code>DecimalFormat</code> ),但指数字段将尝试将数字的符号更改为正/负。</span> </li>
<li> <span>在指数字段中按+/- - 从与<code>DecimalFormatSymbols</code>相关联的<code>DecimalFormat</code> )将尝试将指数的符号更改为正/负。</span> </li>
</ul>
<p> <span>如果您显示科学数字,您可能希望打开覆盖模式<code>setOverwriteMode(true)</code></span> <span>例如:</span> </p>
<pre> <span>DecimalFormat decimalFormat = new DecimalFormat("0.000E0");
NumberFormatter textFormatter = new NumberFormatter(decimalFormat);
textFormatter.setOverwriteMode(true);
textFormatter.setAllowsInvalid(false);</span> </pre>
<p> <span>如果要允许用户输入十进制值您应该强制DecimalFormat至少包含一个小数 <code>#.0###</code> ),或允许该值无效<code>setAllowsInvalid(true)</code></span> <span>否则用户可能无法输入十进制值。</span> </p>
<p> <span><code>NumberFormatter</code>提供与其<code>stringToValue</code>相比略有不同的行为stringToValue。</span> <span>如果指定了值,一类<a href="../../../javax/swing/text/DefaultFormatter.html#setValueClass-java.lang.Class-"><code>DefaultFormatter.setValueClass(java.lang.Class&lt;?&gt;)</code></a> ,这是一个<code>Integer</code> <code>Long</code> <code>Float</code> <code>Double</code> <code>Byte</code><code>Short</code>和格式的<code>parseObject</code>返回的实例<code>Number</code> ,该值类的对应实例将使用构造创建适用于值类代表的原始类型。</span> <span>例如: <code>setValueClass(Integer.class)</code>将导致通过<code>new Integer(((Number)formatter.parseObject(string)).intValue())</code>创建结果值。</span> <span>如果您希望设置最小/最大值,则通常很有用,因为各种<code>Number</code>实现通常不能相互比较。</span> <span>如果由于某种原因,你需要一个特定的,这也是有用<code>Number</code>实施你的价值观。</span> </p>
<p> <span><strong>警告:</strong>此类的序列化对象与将来的Swing版本不兼容。</span> <span>当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。</span> <span>从1.4开始支持所有JavaBeans的长期存储已经添加到<code>java.beans</code>包中。</span> <span>请参阅<a href="../../../java/beans/XMLEncoder.html" title="java.beans中的类"><code>XMLEncoder</code></a></span> </p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.4
</dd>
</dl> </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="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../javax/swing/text/NumberFormatter.html#NumberFormatter--">NumberFormatter</a></span>()</code>
<div class="block">
创建一个
<code>NumberFormatter</code>与默认的
<code>NumberFormat</code>实例从
<code>NumberFormat.getNumberInstance()</code>获得。
</div> </td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../javax/swing/text/NumberFormatter.html#NumberFormatter-java.text.NumberFormat-">NumberFormatter</a></span>(<a href="../../../java/text/NumberFormat.html" title="class in java.text">NumberFormat</a> format)</code>
<div class="block">
使用指定的Format实例创建NumberFormatter。
</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="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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/swing/text/NumberFormatter.html#setFormat-java.text.Format-">setFormat</a></span>(<a href="../../../java/text/Format.html" title="class in java.text">Format</a> format)</code>
<div class="block">
设置指定可编辑和显示的合法值的格式。
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.swing.text.InternationalFormatter">
<!-- --> </a> <h3>Methods inherited from class javax.swing.text.<a href="../../../javax/swing/text/InternationalFormatter.html" title="class in javax.swing.text">InternationalFormatter</a></h3> <code><a href="../../../javax/swing/text/InternationalFormatter.html#clone--">clone</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#getActions--">getActions</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#getFields-int-">getFields</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#getFormat--">getFormat</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#getMaximum--">getMaximum</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#getMinimum--">getMinimum</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#install-javax.swing.JFormattedTextField-">install</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#setMaximum-java.lang.Comparable-">setMaximum</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#setMinimum-java.lang.Comparable-">setMinimum</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#stringToValue-java.lang.String-">stringToValue</a>, <a href="../../../javax/swing/text/InternationalFormatter.html#valueToString-java.lang.Object-">valueToString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.swing.text.DefaultFormatter">
<!-- --> </a> <h3>Methods inherited from class javax.swing.text.<a href="../../../javax/swing/text/DefaultFormatter.html" title="class in javax.swing.text">DefaultFormatter</a></h3> <code><a href="../../../javax/swing/text/DefaultFormatter.html#getAllowsInvalid--">getAllowsInvalid</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#getCommitsOnValidEdit--">getCommitsOnValidEdit</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#getDocumentFilter--">getDocumentFilter</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#getNavigationFilter--">getNavigationFilter</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#getOverwriteMode--">getOverwriteMode</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#getValueClass--">getValueClass</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#setAllowsInvalid-boolean-">setAllowsInvalid</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#setCommitsOnValidEdit-boolean-">setCommitsOnValidEdit</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#setOverwriteMode-boolean-">setOverwriteMode</a>, <a href="../../../javax/swing/text/DefaultFormatter.html#setValueClass-java.lang.Class-">setValueClass</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.swing.JFormattedTextField.AbstractFormatter">
<!-- --> </a> <h3>Methods inherited from class javax.swing.<a href="../../../javax/swing/JFormattedTextField.AbstractFormatter.html" title="class in javax.swing">JFormattedTextField.AbstractFormatter</a></h3> <code><a href="../../../javax/swing/JFormattedTextField.AbstractFormatter.html#getFormattedTextField--">getFormattedTextField</a>, <a href="../../../javax/swing/JFormattedTextField.AbstractFormatter.html#invalidEdit--">invalidEdit</a>, <a href="../../../javax/swing/JFormattedTextField.AbstractFormatter.html#setEditValid-boolean-">setEditValid</a>, <a href="../../../javax/swing/JFormattedTextField.AbstractFormatter.html#uninstall--">uninstall</a></code></li>
</ul>
<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#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#toString--">toString</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="NumberFormatter--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>NumberFormatter</h4> <pre>public NumberFormatter()</pre>
<div class="block">
创建一个
<code>NumberFormatter</code>与从
<code>NumberFormat.getNumberInstance()</code>获得的默认
<code>NumberFormat</code>实例。
</div> </li>
</ul> <a name="NumberFormatter-java.text.NumberFormat-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>NumberFormatter</h4> <pre>public NumberFormatter(<a href="../../../java/text/NumberFormat.html" title="class in java.text">NumberFormat</a> format)</pre>
<div class="block">
使用指定的Format实例创建NumberFormatter。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>format</code> - 用于规定合法价值的格式
</dd>
</dl> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="setFormat-java.text.Format-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>setFormat</h4> <pre>public void setFormat(<a href="../../../java/text/Format.html" title="class in java.text">Format</a> format)</pre>
<div class="block">
<span>设置指定可编辑和显示的合法值的格式。</span>
<p> <span>如果你已经使用了默认构造将会由的方式当前语言环境确定此属性的值<code>NumberFormat.getNumberInstance()</code>方法。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">重写:</span>
</dt>
<dd>
<code><a href="../../../javax/swing/text/InternationalFormatter.html#setFormat-java.text.Format-">setFormat</a></code>
<code><a href="../../../javax/swing/text/InternationalFormatter.html" title="class in javax.swing.text">InternationalFormatter</a></code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>format</code> - 用于指定合法值的NumberFormat实例
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>