Implements interface using java swing.

原创 2006年06月19日 16:02:00


a) Set the first column to be uneditable in JTable.

    /** Table model of the table. */
    final DefaultTableModel dataModel = new DefaultTableModel(
            new Object[][] {{1,"=",""}},
            new String[] {"criterion id", "operation name", "value"}
           
        ){

        // Set col 0 to uneditable.
        public boolean isCellEditable(int row, int col){
            if(col != 0){
                return true;
            }else{
                return false;
            }
        }

b) Implement  TreeView by using JButton/Graphics2d/Line2D.Double.

   
  fig1. the picture of TreeView.   
     1) Create class Node which contain these variable and methods.
                   Node parentNode;
                   Node rootNode;
                   List<Node> children;
                   int layer,level;
                   Line2D.Double line;
                   public void addChild(Node childNode);
                   public void setPrentLevel()
     2) Implement the addChild&setParentLevel method.
                 
                   public void addChild(Node childNode){
                         //make sure the child node is not exist.
                         //set the layer of child node to be layer of parent plus 1.
                         //set the level of child node to be the number of child node in this layer currently.
                         // if the child node is leaf node, then set the level of parent node recursively.
                   }

                   public void setParentLevel(){
                         //Make sure the parent is not null
                         //Set the level of parent to be the mid-level of all the children totally.
                         //Call setParentLevel of this parent node. recursive call.
                   }

c) Implement add/del row in JTable.

        // Handler "new criterion" event.
        buttonNewCriterion.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                indexOfCriterion++;
                dataModel.insertRow(tableView.getRowCount(), new Object[]{new JButton("1"),"=",""});
                tableView.setRowSelectionInterval(tableView.getRowCount() - 1,tableView.getRowCount() - 1);
               
            }
        });
       
        // Handler "new condition" event.
        buttonNewCondition.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                int selectedRow = tableView.getSelectedRow();
                Integer criterionIndex = (Integer)(dataModel.getValueAt(selectedRow, 0));
                dataModel.insertRow(selectedRow + 1, new Object[]{criterionIndex,"=",""});
                tableView.setRowSelectionInterval(selectedRow + 1,selectedRow + 1);
               
            }
        });   
       
        // Handler "delete condition" event.
        buttonDelCondition.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                if(tableView.getSelectedRow() != -1){
                    int selectedRow = tableView.getSelectedRow();
                    dataModel.removeRow(selectedRow);
                    if(selectedRow > 0){
                        tableView.setRowSelectionInterval(selectedRow - 1,selectedRow - 1);
                    }else if(tableView.getRowCount() > 0){
                        tableView.setRowSelectionInterval(0, 0);
                    }
                }
            }
        });

相关文章推荐

java入门学习(11)—接口定义(interface)及使用(implements)

1、接口:一种把类抽象的更彻底,接口里只能包含抽象方法的“特殊类”。接口不关心类的内部状态数据,定义的是一批类所遵守的规范。(它只规定这批类里必须提供某些方法,提供这些方法就可以满足实际要求)。 定...

JAVA 接口 Interface 学习笔记 implements

接口 接口特性 接口不可以被实例化 实现类必须实现接口的所有方法,否则实现类必须是抽象类 实现类可以实现多个接口,来弥补Java不能多继承 接口中的变量都是静态常量 public ...

JAVA之旅(七)——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展

JAVA之旅(七)——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展 OK,我们继续学习JAVA,美滋滋的 一.final ...

java interface和implements和内部类

参考自:http://javaeedevelop.iteye.com/blog/1513135 接口是常量值和方法定义的集合。接口是一种特殊的抽象类。 java类是单继承的。classB Ex...

Java接口_interface_implements

相对抽象类来讲,接口就是比抽象类还要抽象的抽象类,丝毫不带半点实现的内容。 接口可以更加规范的对子类进行约束。 接口全面地专业地实现了:规范和具体实现的分离。 接口就是规范,定义的是一组规则,提现了现...

[2014-10-29]JAVA笔记_GUI(Graphical User Interface)AWT、Swing

一、Java GUI         分为两种:1. AWT(Abstr)

Developing a Service Provider using Java API(Service Provider Interface)

这篇关于SPI的文章是在blogspot上面,被ZF给强奸了,大多数人访问不了,就贴在这里,比较好懂。 From ServiceLoader javadoc: A service is a we...

Java swing 相关: Using Top-Level Containers(使用最上层容器)

Java Swing 相关基础知识 Using Top-Level Containers(使用最上层容器)

Java Swing Interface

  • 2015年10月16日 08:51
  • 22KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Implements interface using java swing.
举报原因:
原因补充:

(最多只允许输入30个字)