十六、Swing高级组件

时间:2021-09-03 08:10:42

1、利用JTable类直接创建表格

(1)创建表格

  构造方法:JTable(Object rowData,Object[] columnNames)

(2)定制表格

  编辑:isCellEditable(int row,int column),默认返回true,表示可以编辑。

  重新排列:setReorderingAllowed(boolean reorderingAllowed)

  内容居中:重构getDefaultRe(Class<?>columnClass)

  方法:setRowHeight(int rowHeight):设置表格的行高,默认为16像素

     setRowSelectionAllowed(Boolean sa):设置是否允许选中,默认允许

     setSelectionMode(int sm):选择模式

     setSelectionBackground(Color bc):背景色

     setSelectionForeground(Color fc):前景色

     setAutoResozeMode(int mode):自动调整模式

  选择模式:SINGLE_SELECTION  (0)  选择一个

       SINGLE_INTERVAL_SELECTION  (1)  连续选择多个

       SINGLE_INTERVAL_SELECTION  (2)  随意选择多个

(3)操纵表格

  方法:getRowCount()、getColumnCount()、getColumnName(int column)

2、表格模型与表格

(1)创建表格

  DefaultTableModel类构造方法

  DefaultTableModel()

  DefaultTableModel(int rowCount,int columnCount)

  DefaultTableModel(Object[] data,Object[] columnNames)

  DefaultTableModel(Vector data,Vector columnNames)

  排序器:setRowSorter(RowSorter<? extends TableModel> sorter)

(2)维护表格

  1)添加数据:尾部:addRow()

          指定位置:insertRow()

3、提供标题栏的表格

  创建同步于连个表格中被选中行的时间监听器

4、Swing树组件

  JTree类创建树,DefaultMutableTreeNode类创建树的节点。

  一个树只能有一个父节点,可以有多个子节点。

  利用add()方法添加子节点。

  遍历树节点:preorderEnumeration()、postorderEnumeration()

  是否显示根节点:setRootVisible(boolean rootVisible)

  是否显示连接线:putClientProperty(Object key,Object value)

  展开节点:expandPath(TreePath path)

  添加树节点:insertNodeInto()

  修改树节点:nodeChanged(TreeNode node)

  删除树节点:removeNodeFromParent(MutableTreeNode node)