JTable的列宽与内容的自适应
JTable默认的各列宽度平均,下函数可以实现各列宽度与内容长度适应!来自互联网~
public void FitTableColumns(JTable myTable){
JTableHeader header = myTable.getTableHeader();
int rowCount = myTable.getRowCount();
Enumeration columns = myTable.getColumnModel().getColumns();
while(columns.hasMoreElements()){
TableColumn column = (TableColumn)columns.nextElement();
int col = header.getColumnModel().getColumnIndex(column.getIdentifier());
int width = (int)myTable.getTableHeader().getDefaultRenderer()
.getTableCellRendererComponent(myTable, column.getIdentifier()
, false, false, -1, col).getPreferredSize().getWidth();
for(int row = 0; row<rowCount; row++){
int preferedWidth = (int)myTable.getCellRenderer(row, col).getTableCellRendererComponent(myTable,
myTable.getValueAt(row, col), false, false, row, col).getPreferredSize().getWidth();
width = Math.max(width, preferedWidth);
}
header.setResizingColumn(column); // 此行很重要
column.setWidth(width+myTable.getIntercellSpacing().width);
}
在表格数据变化后,请调用FitTableColumns(yourTableName);
网上很多,我试过,但大多不起作用,目前为止只发现这个行
原文地址:http://www.ieee.org.cn/dispbbs.asp?boardID=41&ID=52381
分享到:
相关推荐
以下是一种实现`JTable`列宽自适应的方法。 首先,我们需要理解`JTable`的结构。`JTable`由`TableModel`、`TableColumnModel`和`TableHeader`三部分组成。`TableModel`存储数据,`TableColumnModel`管理列,而`...
java代码-使用java解决JTable的表格维护----增、删、改的问题源代码 ——学习参考资料:仅用于个人学习使用!
可以使用`JTable`的`setColumnWidths`方法来调整列宽。 5. **性能优化**:处理大量列时,频繁计算合并信息可能导致性能下降。可以考虑缓存合并信息,仅在必要时更新,以提高应用的响应速度。 在提供的`JTableTest`...
基于java的学籍管理系统.实现了JTable控件的封装.-.rar基于java的学籍管理系统.实现了JTable控件的封装.-.rar基于java的学籍管理系统.实现了JTable控件的封装.-.rar
根据提供的文件信息,我们可以总结出以下关键知识点,主要聚焦于如何使用Java编程语言结合Apache POI库实现将JTable中的内容导出至Excel文件的功能。 ### 关键知识点 #### 1. JTable简介 - **定义**:`JTable`是...
3. **JTable实例化与配置**:创建了一个JTable对象,并对其进行了多项配置。 4. **监听器设置**:为表格添加了选择事件监听器。 ### 重要知识点详解 #### 基础框架构建 - `TableDemo extends JFrame`:定义了一个...
Java显示原始码如何从JTable单元显示图像到Java Java Java标签中的源代码 如何在Java中显示从JTable单元到JLabel的图像(Java源代码)本指南显示如何在jlabel视频上显示选定的jtable行图像-
- **调整列宽**:可以使用`JTable`的`setColumnWidth()`方法设置列宽,以适应数据内容。 6. **显示JTable**: - 将创建的`JTable`添加到`JScrollPane`中,然后将`JScrollPane`添加到`JFrame`或其他容器,以便在...
`autoResizeMode`属性可以设置为自动调整列宽以适应内容。 4. **隐藏/显示列**:可以通过修改`DefaultTableColumnModel`来隐藏或显示列。 5. **排序列**:`RowSorter`也可以用来对列进行排序,只需要设置适当的`...
在处理`JTable`时,我们有时需要使其单元格内容支持自动换行,以便更好地显示长文本。标题“JTable自动换行”正是指向这个功能,即如何在`JTable`的单元格内实现文本的自动换行。 默认情况下,`JTable`的单元格使用...
自己写的一个继承自JTable的带有行号显示功能的表格,支持增删,设置行高等动态操作。
JTable还支持自定义单元格的样式,包括网格线颜色、行高、选中时的前景色与背景色等。 - 更改网格线颜色:`table.setGridColor(Color.black);` - 设置行高:`table.setRowHeight(30);` - 设置选中项的背景色:`...
标题“jtable-弄了我一整天”暗示了作者可能在一天中遇到了与JTable相关的技术挑战。JTable是Java Swing库中的一个组件,用于在应用程序中显示和编辑表格数据。它提供了丰富的功能,包括排序、选择、编辑单元格以及...
JTable 可以与数据库集成,以便于数据的存储和管理。我们可以使用 JDBC 等技术来连接数据库,并将数据加载到 JTable 中。 结论 JTable 数据库基本操作多行增删改查是使用 Java 语言实现的,它提供了一个强大的数据...
"复杂JTable-跨列表头"是一个特殊实现,它扩展了JTable的功能,允许在表头中进行列的合并,这在显示层次结构或分组数据时特别有用。 跨列表头(或合并列头)的概念是将多个列的标题合并为一个大的表头单元格,通常...
在使用 JTable 时,需要注意表格的列宽和行高的设定,这可以使用 TableColumn 的 setMaxWidth() 和 setMinWidth() 方法来实现。 JTable 动态刷新数据需要使用 DefaultTableModel 来存储和管理数据,然后使用...
广告招标系统应用 广告投标系统应用程序(Java,OO设计)09/2013-12/2013•使用... •使用JTable,JTree,JFree-Charts,与用户个人资料,公司工作场所,广告发布者工作场所和广告竞标结果报告相关的页面构建增强的UI。
关于Excel表与JTable之间的转换,通常可以通过读取Excel文件(例如使用Apache POI库)并将数据加载到`TableModel`,或者将JTable的数据导出到Excel文件。这样,可以在Java应用程序中展示和编辑Excel数据,同时保持与...
jTable通过JSON数据与服务器进行交互,通常结合ASP.NET MVC的Controller来处理这些请求。在MVC应用中,你需要创建一个Controller,定义相关的Action,这些Action将返回jTable所需的JSON数据。 **2. 创建 jTable ...