Java获取列TableHeader的边界
我需要得到表格标题中单个列的矩形。有没有办法接收此信息?我希望您想从表头知道单元格的大小 要获得单元格的高度,您必须向tableheader询问大小并获取其高度Java获取列TableHeader的边界,java,swing,jtable,jtableheader,Java,Swing,Jtable,Jtableheader,我需要得到表格标题中单个列的矩形。有没有办法接收此信息?我希望您想从表头知道单元格的大小 要获得单元格的高度,您必须向tableheader询问大小并获取其高度 JTable table; int height = table.getTableHeader().getSize().height //JTable header is a JComponent 要获得单元格的宽度,必须从tableColumnModel中获取宽度 int column; //the index of desired
JTable table;
int height = table.getTableHeader().getSize().height //JTable header is a JComponent
要获得单元格的宽度,必须从tableColumnModel中获取宽度
int column; //the index of desired column
int width = table.getTableColumnModel().getColumn(column).getWidth(); //as mentioned by @MadProgrammer
根据需要,我添加了关于如何获取位置的提示
int xRel = table.getTableHeader().getX();
int column; //the index of desired column
for (int c = 0; c < column; c++){
//adding all cell withds to come to your column
x = x + table.getTableColumnModel().getColumn(c).getWidth();
}
int yRel = table.getTableHeader().getY();
最初你需要尝试一些东西,反复重复。如果卡在某个地方,您需要在SO上发布相关代码,并解释您到底需要什么。
JTable#getColumnModel#getColumn(int)
“我需要在表格标题中获取单个列的矩形。为什么?您可能可以使用I还需要表格标题相对于屏幕上父JComponent或absolut的位置?”@德伯南德
JFrame frame; //your frame
int xAbs = frame.getLocation().x + xRel;
int yAbs = frame.getLocation().y + yRel;