本文整理汇总了Java中javax.swing.JTable.getWidth方法的典型用法代码示例。如果您正苦于以下问题:Java JTable.getWidth方法的具体用法?Java JTable.getWidth怎么用?Java JTable.getWidth使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类javax.swing.JTable
的用法示例。
在下文中一共展示了JTable.getWidth方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: showWindow
import javax.swing.JTable; //导入方法依赖的package包/类
private void showWindow(JTable table, int row) {
/* determine correct location */
//TODO: throw away half of this rubbish
Point offset = new Point();
Point tablebase = table.getLocationOnScreen();
Point framebase = owner.getLocationOnScreen();
Rectangle cellRect = table.getCellRect(row, 0, true);
int middle = table.getHeight() / 2;
int deltax, deltay, width;
deltay = tablebase.y - framebase.y;
Component c = table.getParent();
if (c instanceof JViewport) { //we are in a JScrollPane
c = c.getParent();
deltax = c.getLocationOnScreen().x - framebase.x;
width = c.getWidth();
} else {
deltax = tablebase.x - framebase.x;
width = table.getWidth();
}
offset.x = cellRect.x + deltax;
if (cellRect.y > middle) {
offset.y = cellRect.y - ldWindow.getHeight() + deltay;
} else {
offset.y = cellRect.y + cellRect.height + deltay;
}
//ldWindow.setBase(framebase);
//ldWindow.setOffset(offset);
ldWindow.centerWindow(width, ldWindow.getHeight());
ldWindow.show();
}
示例2: resize
import javax.swing.JTable; //导入方法依赖的package包/类
/**
* Forces the table to resize given column.
*/
private void resize(int newWidth, JTable table) {
int oldWidth = getWidth();
JTableHeader header = table.getTableHeader();
if (header == null) {
return;
}
header.setResizingColumn(this);
final int oldMin = getMinWidth();
final int oldMax = getMaxWidth();
setMinWidth(newWidth);
setMaxWidth(newWidth);
setWidth(newWidth);
// The trick is to restore the original values
// after the table has be layouted. During layout this column
// has fixed width (by setting min==max==preffered)
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
setMinWidth(oldMin);
setMaxWidth(oldMax);
}
});
Container container;
if ((header.getParent() == null) ||
((container = header.getParent().getParent()) == null) ||
!(container instanceof JScrollPane)) {
header.setResizingColumn(null);
return;
}
if (!container.getComponentOrientation().isLeftToRight() &&
! header.getComponentOrientation().isLeftToRight()) {
if (table != null) {
JViewport viewport = ((JScrollPane)container).getViewport();
int viewportWidth = viewport.getWidth();
int diff = newWidth - oldWidth;
int newHeaderWidth = table.getWidth() + diff;
/* Resize a table */
Dimension tableSize = table.getSize();
tableSize.width += diff;
table.setSize(tableSize);
/* If this table is in AUTO_RESIZE_OFF mode and
* has a horizontal scrollbar, we need to update
* a view's position.
*/
if ((newHeaderWidth >= viewportWidth) &&
(table.getAutoResizeMode() == JTable.AUTO_RESIZE_OFF)) {
Point p = viewport.getViewPosition();
p.x = Math.max(0, Math.min(newHeaderWidth - viewportWidth, p.x + diff));
viewport.setViewPosition(p);
}
}
}
header.setResizingColumn(null);
}