Java JTable3 (一)

2014-11-24 07:45:53 · 作者: · 浏览: 1
预览:

\


代码 :


[java]/**
*
*/
package com.han;

import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Vector;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.JTableHeader;
import javax.swing.table.TableCellRenderer;
import javax.swing.table.TableColumnModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;

/**
* @author HAN
*
*/
public class JTable3 extends JFrame {

/**
* coming from the JFrame
*/
private static final long serialVersionUID = -8022000459941822250L;

/**
*
*/

public JTable3() {
// TODO Auto-generated constructor stub
super();
setTitle("定义表格");
setBounds(100, 100, 500, 375);
setLayout(new GridLayout(3,1));
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JScrollPane scrollPane = new JScrollPane();
getContentPane().add(scrollPane);
String[] columnNames = { "A", "B", "C", "D", "E", "F" };
Vector columnNameV = new Vector();
for (int column = 0; column < columnNames.length; column++) {
columnNameV.add(columnNames[column]);
}
Vector> tableva lueV = new Vector>();
for (int row = 1; row < 21; row++) {
Vector rowV = new Vector();
for (int column = 0; column < columnNames.length; column++) {
rowV.add(columnNames[column] + row);
}
tableva lueV.add(rowV);
}
final DefaultTableModel tableModel = new DefaultTableModel(tableva lueV,
columnNameV);
final JTable table = new MTable(tableModel);
table.setRowSorter(new TableRowSorter(tableModel));
scrollPane.setViewportView(table);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
TableColumnModel tableColumnModel = table.getColumnModel();
ListSelectionModel listSelectionModel = tableColumnModel
.getSelectionModel();
System.out.println(listSelectionModel.getSelectionMode());
System.out.println(table.getColumnSelectionAllowed());
System.out.println(table.getRowSelectionAllowed());
table.setColumnSelectionAllowed(true);
table.setRowSelectionAllowed(true);
table.setBackground(Color.YELLOW);
table.setForeground(Color.RED);
table.setRowHeight(30); // in pixels

/* manipulate the table */
table.setRowSelectionInterval(1, 3);
table.setColumnSelectionInterval(1, 1);
table.addRowSelectionInterval(4, 5);// must consider the selection mode
// that has been set before
JPanel buttonPanel = new JPanel();
getContentPane().add(buttonPanel);
JButton se