Java JTable:有任何默认的单元格对齐技术吗? [英] Java JTable: any default cell alignment technique?
问题描述
我有一个包含9列的JTable,我知道我可以为每列创建自定义单元格渲染器,但每个渲染器大约需要花费8行代码.
I have a JTable with 9 columns, and I know I can create custom cell renderers for each column, at the expense of about 8 lines of code per renderer.
但是我真正需要的是将所有单元格中的文本显示为右对齐.有什么办法为整个表格设置这种对齐方式吗?
But all I really need is to display text placed in all cells as right-justified. Is there any way to set this alignment for the whole table?
预先感谢您的任何建议.
Thanks in advance for any suggestions.
约翰·多纳(John Doner)
John Doner
推荐答案
尝试一下:
for (int i = 0; i < myTable.getModel().getRowCount(); i++) {
for (int j = 0; j < myTable.getModel().getColumnCount(); j++) {
DefaultTableCellRenderer renderer =
(DefaultTableCellRenderer)myTable.getCellRenderer(i, j);
renderer.setHorizontalAlignment(JTextField.RIGHT);
} // End for(j)
} // End for(i)
由于每个单元格已经具有渲染器,因此它会从 TableModel
抓取每个单元格的现有 TableCellRenderer
并使用内置方法 setHorizontalAlignment(int)
继承自 JLabel
.
Since each cell already has a renderer, this grabs each cell's existing TableCellRenderer
from the TableModel
and uses the built-in method setHorizontalAlignment(int)
inherited from JLabel
.
希望这就是您想要的!
这篇关于Java JTable:有任何默认的单元格对齐技术吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!