本文整理汇总了Java中javax.swing.table.TableColumnModel.moveColumn方法的典型用法代码示例。如果您正苦于以下问题:Java TableColumnModel.moveColumn方法的具体用法?Java TableColumnModel.moveColumn怎么用?Java TableColumnModel.moveColumn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.swing.table.TableColumnModel
的用法示例。
在下文中一共展示了TableColumnModel.moveColumn方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setColumnsOrder
import javax.swing.table.TableColumnModel; //导入方法依赖的package包/类
private void setColumnsOrder() {
logger.fine("setColumnsOrder()");
TableColumnModel tcm = treeTable.getTable().getColumnModel();
//int[] shift = new int[columns.length];
int defaultColumnVisibleIndex = 0;
for (int i = 0; i < defaultColumnIndex; i++) {
if (!columns[i].isHidden()) {
defaultColumnVisibleIndex++;
}
}
if (defaultColumnVisibleIndex != 0 && defaultColumnVisibleIndex < tcm.getColumnCount()) {
logger.log(Level.FINE, " move default column({0}, {1})", new Object[]{0, defaultColumnVisibleIndex});
tcm.moveColumn(0, defaultColumnVisibleIndex);
}
int n = tcm.getColumnCount();
int[] order = new int[n];
int ci = 0;
for (int i = 0; i < n; i++, ci++) {
while (ci < columns.length && columns[ci].isHidden()) {
ci++;
}
if (ci >= columns.length) {
break;
}
order[i] = columnVisibleMap[ci];
logger.log(Level.FINE, " order[{0}] = {1}", new Object[]{i, order[i]});
}
for (int i = 0; i < n; i++) {
int j = 0;
for (; j < n; j++) {
if (order[j] == i) {
break;
}
}
if (j == n) {
// No "j" for order[j] == i.
continue;
}
logger.log(Level.FINE, " order[{0}] = {1}", new Object[]{j, i});
if (j != i) {
for (int k = j; k > i; k--) {
order[k] = order[k-1];
}
order[i] = i;
logger.log(Level.FINE, " move column({0}, {1})", new Object[]{j, i});
tcm.moveColumn(j, i);
}
}
}