树型Table的设计

树型Table的设计

java 的Table类采用了MVC模式,所以设计出多种视图相对容易.
但是在工作中为了如果Table里的数据能用Tree的方式组织起来,数据会更加紧凑,结构清晰.
效果如图:但是往往工作中数据没那么少,那么简单
效果图.JPG

下图是树型图的思维图

树型Table.jpeg

基本上程序上要写的地方有:
1.实现TreeModel接口,
   同时实现TableModel中几个必要函数
    public Class getColumnClass(int column);
    public int getColumnCount();
    public String getColumnName(int column);
    public Object getValueAt(Object node, int column);
    public boolean isCellEditable(Object node, int column);
    public void setValueAt(Object value, Object node, int column);
   使tree和table能相互结合使用
2.继承AbstractTableModel
   将1中继承TreeModel和此结合
3.继承TableCellRenderer
   要覆盖paint,updateUI 要实现getTableCellRendererComponent

4.TreeModelListener的实现了

整体的代码不长 但花了我不少时间.需要的话留下mail吧.
此代码还有不完善的地方.如和sql结合.

你可能感兴趣的:(树型Table的设计)