uTools-Manuals/docs/java/javax/swing/DefaultRowSorter.html

1125 lines
54 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
</div>
<h2 class="title" title="Class DefaultRowSorter">Class DefaultRowSorter&lt;M,I&gt;</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/RowSorter.html" title="class in javax.swing">javax.swing.RowSorter</a>&lt;M&gt;</li>
<li>
<ul class="inheritance">
<li>javax.swing.DefaultRowSorter&lt;M,I&gt;</li>
</ul> </li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
<span class="paramLabel">参数类型</span>
</dt>
<dd>
<code>M</code> - 模型的类型
</dd>
<dd>
<code>I</code> - 传递给
<code>RowFilter</code>
</dd>
</dl>
<dl>
<dt>
已知直接子类:
</dt>
<dd>
<span><a href="../../javax/swing/table/TableRowSorter.html" title="javax.swing.table中的类">TableRowSorter</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public abstract class <span class="typeNameLabel">DefaultRowSorter&lt;M,I&gt;</span>
extends <a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;M&gt;</pre>
<div class="block">
<span>RowSorter的<code>RowSorter</code> ,它围绕网格数据模型提供排序和过滤。</span>
<span>除了创建和安装<code>RowSorter</code> ,您很少需要直接与一个人交互。</span>
<span>请参阅<a href="../../javax/swing/table/TableRowSorter.html" title="javax.swing.table中的类"><code>TableRowSorter</code></a>的具体实施<code>RowSorter</code><code>JTable</code></span>
<p> <span>按照当前<code>SortKey</code>的顺序进行排序。</span> <span>如果两个对象相等(列的<code>Comparator</code>返回0则使用下一个<code>SortKey</code></span> <span>如果没有<code>SortKey</code>或订单是<code>UNSORTED</code> ,则使用模型中的行的顺序。</span> </p>
<p> <span>通过<code>Comparator</code>完成每列的<code>Comparator</code> ,您可以使用<code>setComparator</code>方法指定。</span> <span>如果<code>Comparator</code>尚未指定, <code>Comparator</code>由归国<code>Collator.getInstance()</code>上使用调用的结果<code>toString</code>于底层对象。</span> <span><code>Comparator</code>从未通过<code>null</code></span> <span><code>null</code>值被视为在非<code>null</code>值之前发生,并且两个<code>null</code>值被认为是相等的。</span> </p>
<p> <span>如果您指定一个<code>Comparator</code>将其参数转换为型号以外的类型,则在数据排序时将抛出<code>ClassCastException</code></span> </p>
<p> <span>除了排序, <code>DefaultRowSorter</code>提供了过滤行的能力。</span> <span>过滤通过的方式进行<code>RowFilter</code>正在使用指定的<code>setRowFilter</code>方法。</span> <span>如果没有指定过滤器,则包括所有行。</span> </p>
<p> <span>默认情况下,行以未排序的顺序(与模型相同),每列可排序。</span> <span>默认的<code>Comparator</code>被记录在子类中(例如<a href="../../javax/swing/table/TableRowSorter.html" title="javax.swing.table中的类"><code>TableRowSorter</code></a> )。</span> </p>
<p> <span>如果底层模型结构发生变化(调用了<code>modelStructureChanged</code>方法),则以下内容将重置为默认值: <code>Comparator</code> s按列当前排序顺序以及每列是否可排序。</span> <span>要找到默认的<code>Comparator</code> s请参阅具体实现例如<a href="../../javax/swing/table/TableRowSorter.html" title="javax.swing.table中的类"><code>TableRowSorter</code></a> )。</span> <span>默认排序顺序是未排序的(与模型相同),列可默认排序。</span> </p>
<p> <span>如果底层模型结构发生变化(调用<code>modelStructureChanged</code>方法),则以下内容将重置为默认值: <code>Comparator</code> ,按列,当前排序顺序以及列是否可排序。</span> </p>
<p> <span><code>DefaultRowSorter</code>是一个抽象类。</span> <span>具体的子类必须通过调用<code>setModelWrapper</code>来提供对底层数据的<code>setModelWrapper</code></span> <span>在调用<code>setModelWrapper</code>函数之后, <b>必须</b>尽快调用<code>setModelWrapper</code>方法,理想情况下是从子类的构造函数中调用。</span> <span>将导致未定义的行为,如果您使用的是<code>DefaultRowSorter</code>而不指定<code>ModelWrapper</code></span> </p>
<p> <span><code>DefaultRowSorter</code>具有两种形式类型参数。</span> <span>第一个类型参数对应于模型的类,例如<code>DefaultTableModel</code></span> <span>第二种类型的参数对应于类传递到所述标识符的<code>RowFilter</code></span> <span>请参阅<code>TableRowSorter</code><code>RowFilter</code>对类型参数的详细信息。</span> </p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.6
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../javax/swing/table/TableRowSorter.html" title="javax.swing.table中的类"><code>TableRowSorter</code></a> <a href="../../javax/swing/table/DefaultTableModel.html" title="javax.swing.table中的类"><code>DefaultTableModel</code></a> <a href="../../java/text/Collator.html" title="java.text中的类"><code>Collator</code></a></span>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- --> </a> <h3>Nested Class Summary</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption>
<span>Nested Classes</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static class </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.ModelWrapper.html" title="class in javax.swing">DefaultRowSorter.ModelWrapper</a>&lt;<a href="../../javax/swing/DefaultRowSorter.ModelWrapper.html" title="type parameter in DefaultRowSorter.ModelWrapper">M</a>,<a href="../../javax/swing/DefaultRowSorter.ModelWrapper.html" title="type parameter in DefaultRowSorter.ModelWrapper">I</a>&gt;</span></code>
<div class="block">
<code>DefaultRowSorter.ModelWrapper</code>负责提供按
<code>DefaultRowSorter</code>排序的
<code>DefaultRowSorter</code>
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.javax.swing.RowSorter">
<!-- --> </a> <h3>Nested classes/interfaces inherited from class javax.swing.<a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a></h3> <code><a href="../../javax/swing/RowSorter.SortKey.html" title="class in javax.swing">RowSorter.SortKey</a></code></li>
</ul> </li>
</ul>
<!-- ======== 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/DefaultRowSorter.html#DefaultRowSorter--">DefaultRowSorter</a></span>()</code>
<div class="block">
创建一个空的
<code>DefaultRowSorter</code>
</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/DefaultRowSorter.html#allRowsChanged--">allRowsChanged</a></span>()</code>
<div class="block">
当底层模型的内容完全改变时调用。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#convertRowIndexToModel-int-">convertRowIndexToModel</a></span>(int index)</code>
<div class="block">
根据底层模型返回
<code>index</code>的位置。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#convertRowIndexToView-int-">convertRowIndexToView</a></span>(int index)</code>
<div class="block">
在视图方面返回
<code>index</code>的位置。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code><a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getComparator-int-">getComparator</a></span>(int column)</code>
<div class="block">
返回
<code>Comparator</code>指定列。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getMaxSortKeys--">getMaxSortKeys</a></span>()</code>
<div class="block">
返回最大排序键数。
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code><a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getModel--">getModel</a></span>()</code>
<div class="block">
返回底层模型。
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getModelRowCount--">getModelRowCount</a></span>()</code>
<div class="block">
返回底层模型中的行数。
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code>protected <a href="../../javax/swing/DefaultRowSorter.ModelWrapper.html" title="class in javax.swing">DefaultRowSorter.ModelWrapper</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>,<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">I</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getModelWrapper--">getModelWrapper</a></span>()</code>
<div class="block">
返回提供正在排序和过滤的数据的模型包装器。
</div> </td>
</tr>
<tr class="altColor" id="i8">
<td class="colFirst"><code><a href="../../javax/swing/RowFilter.html" title="class in javax.swing">RowFilter</a>&lt;? super <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>,? super <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">I</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getRowFilter--">getRowFilter</a></span>()</code>
<div class="block">
返回确定哪些行(如果有的话)应该从视图中隐藏的过滤器。
</div> </td>
</tr>
<tr class="rowColor" id="i9">
<td class="colFirst"><code><a href="../../java/util/List.html" title="interface in java.util">List</a>&lt;? extends <a href="../../javax/swing/RowSorter.SortKey.html" title="class in javax.swing">RowSorter.SortKey</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getSortKeys--">getSortKeys</a></span>()</code>
<div class="block">
返回当前的排序键。
</div> </td>
</tr>
<tr class="altColor" id="i10">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getSortsOnUpdates--">getSortsOnUpdates</a></span>()</code>
<div class="block">
<span>如果在更新底层模型时发生排序则返回true;</span>
<span>否则返回false。</span>
</div> </td>
</tr>
<tr class="rowColor" id="i11">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#getViewRowCount--">getViewRowCount</a></span>()</code>
<div class="block">
返回视图中的行数。
</div> </td>
</tr>
<tr class="altColor" id="i12">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#isSortable-int-">isSortable</a></span>(int column)</code>
<div class="block">
<span>如果指定的列是可排序的则返回true;</span>
<span>否则,假。</span>
</div> </td>
</tr>
<tr class="rowColor" id="i13">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#modelStructureChanged--">modelStructureChanged</a></span>()</code>
<div class="block">
当底层模型结构完全改变时调用。
</div> </td>
</tr>
<tr class="altColor" id="i14">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#rowsDeleted-int-int-">rowsDeleted</a></span>(int firstRow, int endRow)</code>
<div class="block">
当从指定范围(含)的底层模型中删除行时调用。
</div> </td>
</tr>
<tr class="rowColor" id="i15">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#rowsInserted-int-int-">rowsInserted</a></span>(int firstRow, int endRow)</code>
<div class="block">
当行已经在指定范围(包括)中插入到底层模型中时调用。
</div> </td>
</tr>
<tr class="altColor" id="i16">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#rowsUpdated-int-int-">rowsUpdated</a></span>(int firstRow, int endRow)</code>
<div class="block">
在基础模型中在指定范围(包括)之间更改行时调用。
</div> </td>
</tr>
<tr class="rowColor" id="i17">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#rowsUpdated-int-int-int-">rowsUpdated</a></span>(int firstRow, int endRow, int column)</code>
<div class="block">
当行中的列在指定范围内的底层模型中更新时调用。
</div> </td>
</tr>
<tr class="altColor" id="i18">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#setComparator-int-java.util.Comparator-">setComparator</a></span>(int column, <a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a>&lt;?&gt; comparator)</code>
<div class="block">
设置
<code>Comparator</code>在排序指定列时使用。
</div> </td>
</tr>
<tr class="rowColor" id="i19">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#setMaxSortKeys-int-">setMaxSortKeys</a></span>(int max)</code>
<div class="block">
设置最大排序键数。
</div> </td>
</tr>
<tr class="altColor" id="i20">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#setModelWrapper-javax.swing.DefaultRowSorter.ModelWrapper-">setModelWrapper</a></span>(<a href="../../javax/swing/DefaultRowSorter.ModelWrapper.html" title="class in javax.swing">DefaultRowSorter.ModelWrapper</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>,<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">I</a>&gt; modelWrapper)</code>
<div class="block">
设置提供正在排序和过滤的数据的模型包装器。
</div> </td>
</tr>
<tr class="rowColor" id="i21">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#setRowFilter-javax.swing.RowFilter-">setRowFilter</a></span>(<a href="../../javax/swing/RowFilter.html" title="class in javax.swing">RowFilter</a>&lt;? super <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>,? super <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">I</a>&gt; filter)</code>
<div class="block">
设置过滤器,确定哪些行(如果有)应从视图中隐藏。
</div> </td>
</tr>
<tr class="altColor" id="i22">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#setSortable-int-boolean-">setSortable</a></span>(int column, boolean sortable)</code>
<div class="block">
设置指定列是否可排序。
</div> </td>
</tr>
<tr class="rowColor" id="i23">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#setSortKeys-java.util.List-">setSortKeys</a></span>(<a href="../../java/util/List.html" title="interface in java.util">List</a>&lt;? extends <a href="../../javax/swing/RowSorter.SortKey.html" title="class in javax.swing">RowSorter.SortKey</a>&gt; sortKeys)</code>
<div class="block">
设置排序键。
</div> </td>
</tr>
<tr class="altColor" id="i24">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#setSortsOnUpdates-boolean-">setSortsOnUpdates</a></span>(boolean sortsOnUpdates)</code>
<div class="block">
如果为true则指定在更新底层模型时进行排序调用
<code>rowsUpdated</code> )。
</div> </td>
</tr>
<tr class="rowColor" id="i25">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#sort--">sort</a></span>()</code>
<div class="block">
根据当前正在排序的列的排序键和与此排序器关联的过滤器(如果有),对视图中的行进行排序和过滤。
</div> </td>
</tr>
<tr class="altColor" id="i26">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#toggleSortOrder-int-">toggleSortOrder</a></span>(int column)</code>
<div class="block">
<span>如果指定的列已经是主排序列,则将排序顺序从升序到降序(或降序升序)反转;</span>
<span>否则,使指定的列成为主排序列,具有升序的排序顺序。</span>
</div> </td>
</tr>
<tr class="rowColor" id="i27">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../javax/swing/DefaultRowSorter.html#useToString-int-">useToString</a></span>(int column)</code>
<div class="block">
返回在进行排序比较之前是否将该值转换为字符串。
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.swing.RowSorter">
<!-- --> </a> <h3>Methods inherited from class javax.swing.<a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a></h3> <code><a href="../../javax/swing/RowSorter.html#addRowSorterListener-javax.swing.event.RowSorterListener-">addRowSorterListener</a>, <a href="../../javax/swing/RowSorter.html#fireRowSorterChanged-int:A-">fireRowSorterChanged</a>, <a href="../../javax/swing/RowSorter.html#fireSortOrderChanged--">fireSortOrderChanged</a>, <a href="../../javax/swing/RowSorter.html#removeRowSorterListener-javax.swing.event.RowSorterListener-">removeRowSorterListener</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#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#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="DefaultRowSorter--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>DefaultRowSorter</h4> <pre>public DefaultRowSorter()</pre>
<div class="block">
创建一个空的
<code>DefaultRowSorter</code>
</div> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="setModelWrapper-javax.swing.DefaultRowSorter.ModelWrapper-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setModelWrapper</h4> <pre>protected final void setModelWrapper(<a href="../../javax/swing/DefaultRowSorter.ModelWrapper.html" title="class in javax.swing">DefaultRowSorter.ModelWrapper</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>,<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">I</a>&gt; modelWrapper)</pre>
<div class="block">
设置提供正在排序和过滤的数据的模型包装器。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>modelWrapper</code> - 模型包装器,负责提供经过排序和过滤的数据
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>modelWrapper</code>
<code>null</code>
</dd>
</dl> </li>
</ul> <a name="getModelWrapper--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getModelWrapper</h4> <pre>protected final <a href="../../javax/swing/DefaultRowSorter.ModelWrapper.html" title="class in javax.swing">DefaultRowSorter.ModelWrapper</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>,<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">I</a>&gt; getModelWrapper()</pre>
<div class="block">
返回提供正在排序和过滤的数据的模型包装器。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
模型包装器负责提供被分类和过滤的数据
</dd>
</dl> </li>
</ul> <a name="getModel--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getModel</h4> <pre>public final <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a> getModel()</pre>
<div class="block">
返回底层模型。
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#getModel--">getModel</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
底层模型
</dd>
</dl> </li>
</ul> <a name="setSortable-int-boolean-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setSortable</h4> <pre>public void setSortable(int column,
boolean sortable)</pre>
<div class="block">
<span>设置指定列是否可排序。</span>
<span>当指定值仅检查<code>toggleSortOrder</code>被调用。</span>
<span>仍然可以通过直接设置排序键对已经标记为不可调整的列进行排序。</span>
<span>默认值为true。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>column</code> - 根据底层模型启用或禁用排序的列
</dd>
<dd>
<code>sortable</code> - 指定列是否可排序
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果
<code>column</code>超出了模型的范围
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/swing/DefaultRowSorter.html#toggleSortOrder-int-"><code>toggleSortOrder(int)</code></a>
<a href="../../javax/swing/DefaultRowSorter.html#setSortKeys-java.util.List-"><code>setSortKeys(java.util.List&lt;? extends javax.swing.RowSorter.SortKey&gt;)</code></a>
</dd>
</dl> </li>
</ul> <a name="isSortable-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>isSortable</h4> <pre>public boolean isSortable(int column)</pre>
<div class="block">
<span>如果指定的列是可排序的则返回true;</span>
<span>否则,假。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>column</code> - 根据底层模型检查排序的列
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
如果列可排序则为true
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果列超出了底层模型的范围
</dd>
</dl> </li>
</ul> <a name="setSortKeys-java.util.List-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setSortKeys</h4> <pre>public void setSortKeys(<a href="../../java/util/List.html" title="interface in java.util">List</a>&lt;? extends <a href="../../javax/swing/RowSorter.SortKey.html" title="class in javax.swing">RowSorter.SortKey</a>&gt; sortKeys)</pre>
<div class="block">
<span>设置排序键。</span>
<span>这将创建提供的<code>List</code>的副本;</span>
<span>随后更改提供的<code>List</code>不影响此<code>DefaultRowSorter</code></span>
<span>如果排序键已更改,则会触发排序。</span>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#setSortKeys-java.util.List-">setSortKeys</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<span><code>sortKeys</code> - 全新<code>SortKeys</code> ;</span>
<span><code>null</code>是指定空列表的缩写,表示视图应该是未排序的</span>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> -如果有的话中的值的
<code>sortKeys</code>都为空或具有模式的范围之外的列索引
</dd>
</dl> </li>
</ul> <a name="getSortKeys--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getSortKeys</h4> <pre>public <a href="../../java/util/List.html" title="interface in java.util">List</a>&lt;? extends <a href="../../javax/swing/RowSorter.SortKey.html" title="class in javax.swing">RowSorter.SortKey</a>&gt; getSortKeys()</pre>
<div class="block">
<span>返回当前的排序键。</span>
<span>这返回一个不可<code>non-null List</code></span>
<span>如果您需要更改排序键,请复制返回的<code>List</code> ,并复制并使用新列表调用<code>setSortKeys</code></span>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#getSortKeys--">getSortKeys</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
当前排序顺序
</dd>
</dl> </li>
</ul> <a name="setMaxSortKeys-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setMaxSortKeys</h4> <pre>public void setMaxSortKeys(int max)</pre>
<div class="block">
<span>设置最大排序键数。</span>
<span>排序键的数量确定排序时如何解析相等的值。</span>
<span>例如,假设创建了一个表行分拣机,并调用了它<code>setMaxSortKeys(2)</code></span>
<span>用户单击列1的标题导致根据列1中的项排序表行。接下来用户单击列2的标题导致根据列2中的项排序表;</span>
<span>如果第2列中的任何项目相等那么这些特定的行是根据第1列中的项目进行排序的。在这种情况下我们说这些行主要在第2列中排序其次是第1列。如果用户点击列3的标题则这些项目主要在第3列上进行排序并在第2列进行二次排序。由于使用<code>setMaxSortKeys</code>将排序键的最大数量设置为2 <code>setMaxSortKeys</code>列1不再对订单产生影响。</span>
<p> <span>最大排序键数由<code>toggleSortOrder</code>执行。</span> <span>您可以通过直接调用<code>setSortKeys</code>指定更多的排序键,它们都将被保留。</span> <span>然而,如果<code>toggleSortOrder</code>调用<code>toggleSortOrder</code> ,则将强制执行最大排序键数。</span> <span>默认值为3。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>max</code> - 排序键的最大数量
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IllegalArgumentException.html" title="class in java.lang">IllegalArgumentException</a></code> - 如果
<code>max</code> &lt;1
</dd>
</dl> </li>
</ul> <a name="getMaxSortKeys--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getMaxSortKeys</h4> <pre>public int getMaxSortKeys()</pre>
<div class="block">
返回最大排序键数。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
最大排序键数
</dd>
</dl> </li>
</ul> <a name="setSortsOnUpdates-boolean-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setSortsOnUpdates</h4> <pre>public void setSortsOnUpdates(boolean sortsOnUpdates)</pre>
<div class="block">
<span>如果为true则指定在更新底层模型时进行排序调用<code>rowsUpdated</code> )。</span>
<span>例如,如果这是真的并且用户编辑一个条目,该视图中该项目的位置可能会改变。</span>
<span>默认值为false。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>sortsOnUpdates</code> - 是否对更新事件进行排序
</dd>
</dl> </li>
</ul> <a name="getSortsOnUpdates--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getSortsOnUpdates</h4> <pre>public boolean getSortsOnUpdates()</pre>
<div class="block">
<span>如果在更新底层模型时发生排序则返回true;</span>
<span>否则返回false。</span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
是否在模型更新时进行排序
</dd>
</dl> </li>
</ul> <a name="setRowFilter-javax.swing.RowFilter-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setRowFilter</h4> <pre>public void setRowFilter(<a href="../../javax/swing/RowFilter.html" title="class in javax.swing">RowFilter</a>&lt;? super <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>,? super <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">I</a>&gt; filter)</pre>
<div class="block">
<span>设置过滤器,确定哪些行(如果有)应从视图中隐藏。</span>
<span>过滤器在排序前应用。</span>
<span>值为<code>null</code>表示应包含模型中的所有值。</span>
<p> <span><code>RowFilter</code><code>include</code>方法传递的<code>Entry</code>封装了底层模型。</span> <span>在列数<code>Entry</code>对应于列在数量<code>ModelWrapper</code></span> <span>标识符也来自<code>ModelWrapper</code></span> </p>
<p> <span>此方法触发排序。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>filter</code> - 用于确定应包括哪些条目的过滤器
</dd>
</dl> </li>
</ul> <a name="getRowFilter--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getRowFilter</h4> <pre>public <a href="../../javax/swing/RowFilter.html" title="class in javax.swing">RowFilter</a>&lt;? super <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>,? super <a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">I</a>&gt; getRowFilter()</pre>
<div class="block">
返回确定哪些行(如果有的话)应该从视图中隐藏的过滤器。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
过滤器
</dd>
</dl> </li>
</ul> <a name="toggleSortOrder-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>toggleSortOrder</h4> <pre>public void toggleSortOrder(int column)</pre>
<div class="block">
<span>如果指定的列已经是主排序列,则将排序顺序从升序到降序(或降序升序)反转;</span>
<span>否则,使指定的列成为主排序列,具有升序的排序顺序。</span>
<span>如果指定的列不可排序,则此方法无效。</span>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#toggleSortOrder-int-">toggleSortOrder</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>column</code> - 根据底层模型制作主排序列的列的索引
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果列超出了底层模型的范围
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/swing/DefaultRowSorter.html#setSortable-int-boolean-"><code>setSortable(int,boolean)</code></a>
<a href="../../javax/swing/DefaultRowSorter.html#setMaxSortKeys-int-"><code>setMaxSortKeys(int)</code></a>
</dd>
</dl> </li>
</ul> <a name="convertRowIndexToView-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>convertRowIndexToView</h4> <pre>public int convertRowIndexToView(int index)</pre>
<div class="block">
<span>根据视图返回<code>index</code>的位置。</span>
<span>也就是说,对于底层模型的坐标中的行<code>index</code> ,返回视图的行索引。</span>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#convertRowIndexToView-int-">convertRowIndexToView</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>index</code> - 底层模型的行索引
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
视图中的行索引,如果索引已从视图中过滤出来,则为-1
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果
<code>index</code>在模型的范围之外
</dd>
</dl> </li>
</ul> <a name="convertRowIndexToModel-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>convertRowIndexToModel</h4> <pre>public int convertRowIndexToModel(int index)</pre>
<div class="block">
<span>根据底层模型返回<code>index</code>的位置。</span>
<span>也就是说,对于视图<code>index</code>中的行<code>index</code> ,这将返回基于模型的行索引。</span>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#convertRowIndexToModel-int-">convertRowIndexToModel</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>index</code> - 底层视图中的行索引
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
行索引在视图方面
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果
<code>index</code>在视图的范围之外
</dd>
</dl> </li>
</ul> <a name="sort--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>sort</h4> <pre>public void sort()</pre>
<div class="block">
<span>根据当前正在排序的列的排序键和与此排序器关联的过滤器(如果有),对视图中的行进行排序和过滤。</span>
<span>空的<code>sortKeys</code>列表表示视图应该不排序,与模型相同。</span>
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/swing/DefaultRowSorter.html#setRowFilter-javax.swing.RowFilter-"><code>setRowFilter(javax.swing.RowFilter&lt;? super M, ? super I&gt;)</code></a>
<a href="../../javax/swing/DefaultRowSorter.html#setSortKeys-java.util.List-"><code>setSortKeys(java.util.List&lt;? extends javax.swing.RowSorter.SortKey&gt;)</code></a>
</dd>
</dl> </li>
</ul> <a name="useToString-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>useToString</h4> <pre>protected boolean useToString(int column)</pre>
<div class="block">
<span>返回在进行排序比较之前是否将该值转换为字符串。</span>
<span>如果真<code>ModelWrapper.getStringValueAt</code>将被使用,否则<code>ModelWrapper.getValueAt</code>将被使用。</span>
<span>它是由子类,如<code>TableRowSorter</code> ,兑现他们这个值<code>ModelWrapper</code>实现。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>column</code> - 根据底层模型测试的列的索引
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果
<code>column</code>无效
</dd>
</dl> </li>
</ul> <a name="setComparator-int-java.util.Comparator-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>setComparator</h4> <pre>public void setComparator(int column,
<a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a>&lt;?&gt; comparator)</pre>
<div class="block">
<span>设置<code>Comparator</code>在排序指定列时使用。</span>
<span>这不会触发排序。</span>
<span>如果要在设置比较器后进行排序,则需要显式调用<code>sort</code></span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>column</code> -列的索引
<code>Comparator</code>是用于,在底层模型而言
</dd>
<dd>
<code>comparator</code> -
<code>Comparator</code>使用
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果
<code>column</code>在基础模型的范围之外
</dd>
</dl> </li>
</ul> <a name="getComparator-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getComparator</h4> <pre>public <a href="../../java/util/Comparator.html" title="interface in java.util">Comparator</a>&lt;?&gt; getComparator(int column)</pre>
<div class="block">
<span>返回<code>Comparator</code>指定列。</span>
<span>这将返回<code>null</code>如果<code>Comparator</code>尚未为列指定。</span>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>column</code> -列去取
<code>Comparator</code>的,在底层模型而言
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>Comparator</code>指定列
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果列超出了底层模型的范围
</dd>
</dl> </li>
</ul> <a name="getViewRowCount--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getViewRowCount</h4> <pre>public int getViewRowCount()</pre>
<div class="block">
<span>返回视图中的行数。</span>
<span>如果内容已被过滤,这可能与底层模型的行数有所不同。</span>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#getViewRowCount--">getViewRowCount</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
视图中的行数
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/swing/RowSorter.html#getModelRowCount--"><code>RowSorter.getModelRowCount()</code></a>
</dd>
</dl> </li>
</ul> <a name="getModelRowCount--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>getModelRowCount</h4> <pre>public int getModelRowCount()</pre>
<div class="block">
返回底层模型中的行数。
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#getModelRowCount--">getModelRowCount</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
底层模型中的行数
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../javax/swing/RowSorter.html#getViewRowCount--"><code>RowSorter.getViewRowCount()</code></a>
</dd>
</dl> </li>
</ul> <a name="modelStructureChanged--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>modelStructureChanged</h4> <pre>public void modelStructureChanged()</pre>
<div class="block">
<span>当底层模型结构完全改变时调用。</span>
<span>例如,如果<code>TableModel</code>中的列数改变了,则会调用此方法。</span>
<p> <span>通常不会调用此方法。</span> <span>这种方法是公开的,允许视图类调用它。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#modelStructureChanged--">modelStructureChanged</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
</dl> </li>
</ul> <a name="allRowsChanged--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>allRowsChanged</h4> <pre>public void allRowsChanged()</pre>
<div class="block">
<span>当底层模型的内容完全改变时调用。</span>
<span>表的结构是一样的,只有内容已经改变了。</span>
<span>这通常是在太贵的情况下发送的,以表征其他方法的变化。</span>
<p> <span>通常不会调用此方法。</span> <span>这种方法是公开的,允许视图类调用它。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#allRowsChanged--">allRowsChanged</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
</dl> </li>
</ul> <a name="rowsInserted-int-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>rowsInserted</h4> <pre>public void rowsInserted(int firstRow,
int endRow)</pre>
<div class="block">
<span>当行已经在指定范围(包括)中插入到底层模型中时调用。</span>
<p> <span>参数给出了影响范围的指标。</span> <span>第一个参数是变更前的模型,并且必须小于或等于变更前的模型大小。</span> <span>第二个参数是改变后的模型,必须小于变更后的模型大小。</span> <span>例如如果您有5行模型并在模型的末尾添加3个项目那么索引为5,7。</span> </p>
<p> <span>通常不会调用此方法。</span> <span>这种方法是公开的,允许视图类调用它。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#rowsInserted-int-int-">rowsInserted</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>firstRow</code> - 第一行
</dd>
<dd>
<code>endRow</code> - 最后一行
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果任一参数无效,或
<code>firstRow</code> &gt;
<code>endRow</code>
</dd>
</dl> </li>
</ul> <a name="rowsDeleted-int-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>rowsDeleted</h4> <pre>public void rowsDeleted(int firstRow,
int endRow)</pre>
<div class="block">
<span>当从指定范围(含)的底层模型中删除行时调用。</span>
<p> <span>这些参数给出了影响范围的指标,并且是在变化<b></b>的模型。</span> <span>例如如果您有5行模型并从模型末尾删除3个项目则索引为24。</span> </p>
<p> <span>通常不会调用此方法。</span> <span>这种方法是公开的,允许视图类调用它。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#rowsDeleted-int-int-">rowsDeleted</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>firstRow</code> - 第一行
</dd>
<dd>
<code>endRow</code> - 最后一行
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果任一参数超出变更前模型的范围,或者
<code>firstRow</code> &gt;
<code>endRow</code>
</dd>
</dl> </li>
</ul> <a name="rowsUpdated-int-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>rowsUpdated</h4> <pre>public void rowsUpdated(int firstRow,
int endRow)</pre>
<div class="block">
<span>在基础模型中在指定范围(包括)之间更改行时调用。</span>
<p> <span>通常不会调用此方法。</span> <span>这种方法是公开的,允许视图类调用它。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#rowsUpdated-int-int-">rowsUpdated</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>firstRow</code> - 第一行,在底层模型方面
</dd>
<dd>
<code>endRow</code> - 根据底层模型的最后一行
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果任一参数超出了基础模型的范围,或者
<code>firstRow</code> &gt;
<code>endRow</code>
</dd>
</dl> </li>
</ul> <a name="rowsUpdated-int-int-int-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>rowsUpdated</h4> <pre>public void rowsUpdated(int firstRow,
int endRow,
int column)</pre>
<div class="block">
<span>当行中的列在指定范围内的底层模型中更新时调用。</span>
<p> <span>通常不会调用此方法。</span> <span>这种方法是公开的,允许视图类调用它。</span> </p>
</div>
<dl>
<dt>
<span class="overrideSpecifyLabel">Specified by:</span>
</dt>
<dd>
<code><a href="../../javax/swing/RowSorter.html#rowsUpdated-int-int-int-">rowsUpdated</a></code>
<code><a href="../../javax/swing/RowSorter.html" title="class in javax.swing">RowSorter</a>&lt;<a href="../../javax/swing/DefaultRowSorter.html" title="type parameter in DefaultRowSorter">M</a>&gt;</code>
</dd>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>firstRow</code> - 第一行,在底层模型方面
</dd>
<dd>
<code>endRow</code> - 根据底层模型的最后一行
</dd>
<dd>
<code>column</code> - 在底层模型方面已经改变的列
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../java/lang/IndexOutOfBoundsException.html" title="class in java.lang">IndexOutOfBoundsException</a></code> - 如果任何一个参数在更改后的基础模型的范围之外,
<code>firstRow</code> &gt;
<code>endRow</code>
<code>column</code>在基础模型的范围之外
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>