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、接口:一种把类抽象的更彻底,接口里只能包含抽象方法的“特殊类”。接口不关心类的内部状态数据,定义的是一批类所遵守的规范。(它只规定这批类里必须提供某些方法,提供这些方法就可以满足实际要求)。 定...
  • newly123
  • newly123
  • 2016年01月18日 15:59
  • 1951

[原]Java思想之容器implements与接口interface

http://homeway.me/ 0x01.About查了一些国内资料,都说java中extended与implements的区别是,一个类只能有一个继承,一个类可以有多个容器。后来去看了...
  • u012992688
  • u012992688
  • 2015年04月15日 00:35
  • 1939

ActionListener的三种实现方法

本文载自http://hi.baidu.com/346667002/blog/item/61854df85302d007d8f9fd7d.html     Swing是目前Java中...
  • nkliming
  • nkliming
  • 2013年04月02日 16:36
  • 3108

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

JAVA之旅(七)——final关键字 , 抽象类abstract,模板方法模式,接口interface,implements,特点,扩展 OK,我们继续学习JAVA,美滋滋的 一.final ...
  • qq_26787115
  • qq_26787115
  • 2016年05月27日 21:54
  • 6876

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

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

JAVA 接口 Interface 学习笔记 implements

接口 接口特性 接口不可以被实例化 实现类必须实现接口的所有方法,否则实现类必须是抽象类 实现类可以实现多个接口,来弥补Java不能多继承 接口中的变量都是静态常量 public ...
  • zhangyufeng0126
  • zhangyufeng0126
  • 2016年05月30日 16:02
  • 772

Java面向对象高级--接口的基本概念--------interface、implements

1、接口: 接口是一种特殊的类,里面全部是由全局常量(static final)和公共的抽象方法(abstract)组成。 interface A{ // 定义接口A public stat...
  • waldmer
  • waldmer
  • 2013年09月25日 16:00
  • 1372

java interface和implements和内部类

参考自:http://javaeedevelop.iteye.com/blog/1513135 接口是常量值和方法定义的集合。接口是一种特殊的抽象类。 java类是单继承的。classB Ex...
  • u011271202
  • u011271202
  • 2014年06月27日 10:40
  • 620

Java接口_interface_implements

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

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

这篇关于SPI的文章是在blogspot上面,被ZF给强奸了,大多数人访问不了,就贴在这里,比较好懂。 From ServiceLoader javadoc: A service is a we...
  • fenglibing
  • fenglibing
  • 2011年12月19日 11:23
  • 5531
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Implements interface using java swing.
举报原因:
原因补充:

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