本文整理匯總了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);
}
}
}