当前位置:编程学习 > JAVA >>

Java使用自定义的tableModel,设置可编辑方式

\

[java]
package com.han; 
 
import java.awt.BorderLayout; 
import java.util.Vector; 
 
import javax.swing.JFrame; 
 
/**
 * Provide a fixed column in a table.
 * 
 * <code><p>public boolean isCellEditable(int row, int column) {<p>
        return getModel().isCellEditable(convertRowIndexToModel(row),<p>
                                         convertColumnIndexToModel(column));<p>
    }<p>
    </code>
 *  so we can also directly rewrite the isCellEditable() in the table model.
 * 
 * @author Gaowen
 * 
 */ 
 
public class JTable4_Modified extends JFrame { 
    /**
     * 
     */ 
    private static final long serialVersionUID = 805308369080023303L; 
 
    public JTable4_Modified() { 
        super(); 
        setTitle("提供行标题栏的表格"); 
        setBounds(100, 100, 500, 400); 
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
 
        Vector<String> columnNameV = new Vector<String>(); 
        columnNameV.add("日期"); 
        for (int i = 1; i < 21; i++) { 
            columnNameV.add("商品" + i); 
        } 
        Vector<Vector<Object>> tableValueV = new Vector<Vector<Object>>(); 
        for (int row = 1; row < 31; row++) { 
            Vector<Object> rowV = new Vector<Object>(); 
            rowV.add(row); 
            for (int col = 0; col < 20; col++) { 
                rowV.add((int) (Math.random() * 1000)); 
            } 
            tableValueV.add(rowV); 
        } 
        final MFixedColumnTable_Modified panel = new MFixedColumnTable_Modified(columnNameV, 
                tableValueV, 1); 
        getContentPane().add(panel, BorderLayout.CENTER); 
    } 
 
    public static void main(String[] args) { 
        // TODO Auto-generated method stub  
        JTable4_Modified frame = new JTable4_Modified(); 
        frame.setVisible(true); 
    } 

package com.han;

import java.awt.BorderLayout;
import java.util.Vector;

import javax.swing.JFrame;

/**
 * Provide a fixed column in a table.
 *
 * <code><p>public boolean isCellEditable(int row, int column) {<p>
        return getModel().isCellEditable(convertRowIndexToModel(row),<p>
                                         convertColumnIndexToModel(column));<p>
    }<p>
    </code>
 *  so we can also directly rewrite the isCellEditable() in the table model.
 *
 * @author Gaowen
 *
 */

public class JTable4_Modified extends JFrame {
 /**
  *
  */
 private static final long serialVersionUID = 805308369080023303L;

 public JTable4_Modified() {
  super();
  setTitle("提供行标题栏的表格");
  setBounds(100, 100, 500, 400);
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  Vector<String> columnNameV = new Vector<String>();
  columnNameV.add("日期");
  for (int i = 1; i < 21; i++) {
   columnNameV.add("商品" + i);
  }
  Vector<Vector<Object>> tableValueV = new Vector<Vector<Object>>();
  for (int row = 1; row < 31; row++) {
   Vector<Object> rowV = new Vector<Object>();
   rowV.add(row);
   for (int col = 0; col < 20; col++) {
    rowV.add((int) (Math.random() * 1000));
   }
   tableValueV.add(rowV);
  }
  final MFixedColumnTable_Modified panel = new MFixedColumnTable_Modified(columnNameV,
    tableValueV, 1);
  getContentPane().add(panel, BorderLayout.CENTER);
 }

 public static void main(String[] args) {
  // TODO Auto-generated method stub
  JTable4_Modified frame = new JTable4_Modified();
  frame.setVisible(true);
 }
}

[java]
package com.han; 
 
import java.awt.BorderLayout; 
import java.util.Vector; 
 
import javax.swing.JPanel; 
import javax.swing.JScrollPane; 
import javax.swing.JTable; 
import javax.swing.JViewport; 
import javax.swing.ListSelectionModel; 
import javax.swing.event.ListSelectionEvent; 
import javax.swing.event.ListSelectionListener; 
import javax.swing.table.AbstractTableModel; 
 
/**
 * <code><p>public boolean isCellEditable(int row, int column) {<p>
        return getModel().isCellEditable(convertRowIndexToModel(row),<p>
                                         convertColumnIndexToModel(column));<p>
    }<p>
    </code>
 *  so we can also directly rewrite the isCellEditable() in the table model.
 * 
 * @author HAN
补充:软件开发 , Java ,

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,