62,621
社区成员
发帖
与我相关
我的任务
分享
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Vector;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.SwingUtilities;
import javax.swing.table.DefaultTableModel;
public class FlushTable extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JScrollPane ThejScrollPane = null;
private JTable ThejTable = null;
private JComboBox jComboBox = null;
private Vector jTableHeadName = new Vector();
private Vector Data = new Vector();
/**
* This method initializes ThejScrollPane
*
* @return javax.swing.JScrollPane
*/
private JScrollPane getThejScrollPane() {
if (ThejScrollPane == null) {
ThejScrollPane = new JScrollPane();
ThejScrollPane.setViewportView(getThejTable());
}
return ThejScrollPane;
}
/**
* This method initializes ThejTable
*
* @return javax.swing.JTable
*/
private JTable getThejTable() {
if (ThejTable == null) {
String[] DoneColumnNames = { "日期" };
for (int i = 0; i < DoneColumnNames.length; i++) {
jTableHeadName.add(DoneColumnNames[i]);
}
DefaultTableModel DonejTableModel = new DefaultTableModel();
DonejTableModel.setDataVector(Data, jTableHeadName);
ThejTable = new JTable(DonejTableModel);
}
return ThejTable;
}
/**
* This method initializes jComboBox
*
* @return javax.swing.JComboBox
*/
private JComboBox getJComboBox() {
if (jComboBox == null) {
String[] WorkTypeList = { "星期一", "星期二", "星期三", "星期四", "星期五" };
jComboBox = new JComboBox(WorkTypeList);
}
return jComboBox;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SwingUtilities.invokeLater(new Runnable() {
public void run() {
FlushTable thisClass = new FlushTable();
thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
thisClass.setVisible(true);
}
});
}
/**
* This is the default constructor
*/
public FlushTable() {
super();
initTable();
initialize();
addListener();
}
public void initTable() {
Data = new Vector();
if (jComboBox != null) {
Vector v = new Vector();
v.add(getJComboBox().getSelectedItem());
Data.add(v);
}
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(300, 200);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
jContentPane = new JPanel();
jContentPane.setLayout(new BorderLayout());
jContentPane.add(getJComboBox(), BorderLayout.NORTH);
jContentPane.add(getThejScrollPane(), BorderLayout.CENTER);
}
return jContentPane;
}
private void addListener() {
jComboBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JComboBox cb = (JComboBox) e.getSource();
initTable();
System.out.println(getJComboBox().getSelectedItem());
((DefaultTableModel) ThejTable.getModel()).setDataVector(Data,
jTableHeadName);
}
});
}
}
public void initTable() {
Vector Data1 = new Vector();
if (jComboBox != null && Data != null) {
Data1.add(getJComboBox().getSelectedItem());
Data.removeAllElements();
Data.insertElementAt(Data1, 0);
donejTableModel.fireTableDataChanged();
this.repaint();
}
}
donejTableModel 升级为字段
public void initTable() {
Data = new Vector();
if (jComboBox != null) {
Vector temp = new Vector();
temp.add(getJComboBox().getSelectedItem());
Data.add(temp);
DefaultTableModel DonejTableModel = (DefaultTableModel) ThejTable.getModel();
DonejTableModel.setDataVector(Data, jTableHeadName);
}
}private JTable getThejTable() {
if (ThejTable == null) {
String[] DoneColumnNames = {"日期"};
for (int i = 0; i < DoneColumnNames.length; i++) {
jTableHeadName.add(DoneColumnNames[i]);
}
DefaultTableModel DonejTableModel = new DefaultTableModel();
DonejTableModel.setDataVector(Data, jTableHeadName);
DonejTableModel.fireTableDataChanged();
ThejTable = new JTable(DonejTableModel);
}
return ThejTable;
}