swing中jtable的使用方法

swing中jtable的使用方法

ID:34418722

大小:364.45 KB

页数:30页

时间:2019-03-06

swing中jtable的使用方法_第1页
swing中jtable的使用方法_第2页
swing中jtable的使用方法_第3页
swing中jtable的使用方法_第4页
swing中jtable的使用方法_第5页
资源描述:

《swing中jtable的使用方法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、如何使用Table利用JTable类,可以以表格的形式展示数据,可设置允许用户编辑数据。JTable本身不拥有或者缓存数据;它只是数据的视图。这里有一个放在滚动面板上的典型表格:本文展示如何完成一些常见的表格相关的任务:包括以下部分:(1)创建一个简单的表格(2)向容器添加表格(3)改变每每一栏的宽度(4)用户选择(5)创建表格模型(6)监听数据改变(7)点燃数据改变事件(8)概念:编辑器和渲染器(9)使用自定义渲染器(10)为单元格指定提示工具(11)为列头指定提示工具(12)排序和过滤(13)使用组合框作为编辑器(14)使用其他编辑器(15)使用

2、编辑器验证用户的文本输入(16)打印(17)例子列表(1)创建一个简单的表格SimpleTableDemo.java中的表格在一个字符串数组中声明各个列名Java代码1String[]columnNames={"FirstName",2"LastName",3"Sport",4"#ofYears",5"Vegetarian"};数据初始化并存储在二维数组:Java代码6Object[][]data={7{"Kathy","Smith",8"Snowboarding",newInteger(5),newBoolean(false)},9{"John",

3、"Doe",10"Rowing",newInteger(3),newBoolean(true)},11{"Sue","Black",12"Knitting",newInteger(2),newBoolean(false)},13{"Jane","White",14"Speedreading",newInteger(20),newBoolean(true)},15{"Joe","Brown",1617"Pool",newInteger(10),newBoolean(false)}18};接着表格使用这些数据和列名构造一个表格:Java代码1JTable

4、table=newJTable(data,columnNames);有两个接收数据的JTable构造器:·JTable(Object[][]rowData,Object[]columnNames)·JTable(VectorrowData,VectorcolumNames)这些构造函数的好处是容易实现,而缺点是:·他们自动设置每个单元格为可编辑·数据类型都视为一样的(字符串类型)。例如,如果表格的一列有Boolean数据,表格用单选框来展示这个数据。可是,如果你用上面两种构造,你的Boolean数据将显示为字符串,就像前面表格截图中的Vegetari

5、an一列一样。·它们要求你把所有表格数据放入一个数组或者vector,这些数据结构可能不适合某些数据类型。例如,如果你实体化一组数据库对象,比起拷贝所有值放入数组和vector,你可能仅仅想要直接查询这些对象的值。如果你想避免这些限制,你需要实现你自己的表格模型,见“(5)创建表格模型”。(2)向容器添加表格这里有一段创建滚动面板作为表格容器的常规代码:Java代码2JScrollPanescrollPane=newJScrollPane(table);3table.setFillsViewportHeight(true);这两行代码实现了:表格对象

6、的引用作为JScrollPane构造函数的参数,创建一个容纳table的容器,table添加到容器中;JTable.setFillsViewportHeight方法设置了fillsViewportHeight属性。当这个属性为true时,表格会占据容器整个高度,即便表格没有足够的行去使用这些垂直空间。这使得表格更容易实现拖拉操作。滚动面板自动把表格头放置在视窗的顶端。当表格数据垂直滚动时,列名保持在视窗顶端可视。如果你想要使用一个没有滚动面板的表格,你必须获得表格头组件,然后自己放置它,例如:Java代码1container.setLayout(ne

7、wBorderLayout());2container.add(table.getTableHeader(),BorderLayout.PAGE_START);3container.add(table,BorderLayout.CENTER);(3)改变每每一列的宽度默认情况下,表格所有列等宽,切这些列自动填满整个表格的宽度。当表格变宽或者变窄时(通常是用户调整包含表格的窗口大小),所有的列宽自动调整到适当宽度。当用户通过拖动列头的右边界来调整某一列的宽度时,要么别的列的宽度会受到影响而改变,要么整个表格的宽度会改变。默认情况下,表格整体宽度保持不变

8、,“拖动点“的右侧各列利用增加或减少的空间自我调整,拖动的那一列的左侧各列保持不变。要定义各列初始化宽度,你

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。