Java JTable3
预览:代码 :
[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<String> columnNameV = new Vector<String>();
for (int column = 0; column < columnNames.length; column++) {
columnNameV.add(columnNames[column]);
}
Vector<Vector<String>> tableValueV = new Vector<Vector<String>>();
for (int row = 1; row < 21; row++) {
Vector<String> rowV = new Vector<String>();
for (int column = 0; column < columnNames.length; column++) {
rowV.add(columnNames[column] + row);
}
tableValueV.add(rowV);
}
final DefaultTableModel tableModel = new DefaultTableModel(tableValueV,
columnNameV);
final JTable table = new MTable(tableModel);
table.setRowSorter(new TableRowSorter<DefaultTableModel>(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 selectAllButton = new JButton("全部选择");
selectAllButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
table.selectAll();
}
});
buttonPanel.add(selectAllButton);
JButton clearSelectionButton = new JButton("取消选择");
clearSelectionButton.addActionListener(n
补充:软件开发 , Java ,