📄 tableview.java
字号:
package org.dbgen.view;import java.awt.*;import java.beans.*;import java.awt.event.*;import java.util.*;import javax.swing.*;import javax.swing.border.*;import javax.swing.event.*;import javax.swing.table.*;import org.dbgen.*;/** * This class was generated by a SmartGuide. * */public class TableView extends javax.swing.JPanel implements TextFieldListener, ActionListener, ListSelectionListener { javax.swing.JTabbedPane fieldTab = null; javax.swing.JPanel fieldGeneralPanel = null; javax.swing.JPanel fieldFieldsPanel = null; javax.swing.JPanel fieldRelationsPanel = null; org.dbgen.view.TextField fieldTableNameField = null; org.dbgen.view.TextField fieldClassNameField = null; org.dbgen.view.TextField fieldPackageNameField = null; protected final static int TABLE_NAME_FIELD = 1; protected final static int CLASS_NAME_FIELD = 2; protected final static int PACKAGE_NAME_FIELD = 3; protected final static int OUTPUT_DIRECTORY_FIELD = 4; Table fieldTable = null; JTable fieldFieldsTable = null; JButton addButton = null; JButton deleteButton = null; JButton addButton2 = null; JButton deleteButton2 = null; JButton helpButton = null; TableCellEditor typeCellEditor = new DefaultCellEditor(Util.createFieldTypesComboBox()); private JTable fieldRelationsTable = null; private DefaultComboBoxModel fieldMasterKeyComboBoxModel = null; private DefaultComboBoxModel fieldForeignTableComboBoxModel = null; private DefaultComboBoxModel fieldForeignKeyComboBoxModel = null; private JComboBox fieldCmbMasterKey = null; private JComboBox fieldCmbForeignTable = null; private JComboBox fieldCmbForeignKey = null; private DefaultCellEditor fieldCedMasterKey = null; private DefaultCellEditor fieldCedForeignTable = null; private DefaultCellEditor fieldCedForeignKey = null; private TableSorter relationTableSorter = null; static final int COLUMN_MASTER_KEY = 0; static final int COLUMN_FOREIGN_TABLE = 1; static final int COLUMN_FOREIGN_KEY = 2; class RelationCellEditor extends DefaultCellEditor { public RelationCellEditor(JComboBox x) { super(x); } } /** * TableView constructor comment. */ public TableView() { super(); initialize(); } /** * This method was created by a SmartGuide. * @param event ActionEvent */ public void actionPerformed(ActionEvent event) { JButton source = (JButton) event.getSource(); int row; if (source == addButton) { int currSize = getTable().getFields().size(); getTable().addDefaultField(); row = currSize; getFieldsTable().setRowSelectionInterval(row, row); } else if (source == deleteButton) { row = getFieldsTable().getSelectedRow(); getTable().deleteField(getTable().getField(row)); /* select last item if the last field was deleted */ if (row == getTable().getFields().size()) row--; getFieldsTable().setRowSelectionInterval(row, row); } else if (source == addButton2) { int currSize = getTable().getRelations().size(); getTable().addDefaultRelation(); row = currSize; getRelationsTable().setRowSelectionInterval(row, row); getRelationsTable().getColumnModel().getColumn(COLUMN_MASTER_KEY).setCellEditor( fieldCedMasterKey); getRelationsTable().getColumnModel().getColumn(COLUMN_FOREIGN_TABLE).setCellEditor( fieldCedForeignTable); getRelationsTable().getColumnModel().getColumn(COLUMN_FOREIGN_KEY).setCellEditor( fieldCedForeignKey); getRelationsTable().getTableHeader().resizeAndRepaint(); new TableHeaderRenderer( getRelationsTable().getModel(), getRelationsTable().getTableHeader() ); getRelationsTable().editCellAt( getRelationsTable().getSelectedRow(), COLUMN_MASTER_KEY ); getCmbMasterKey().setSize( new Dimension( getRelationsTable().getWidth()/3, 18 ) ); getCmbMasterKey().showPopup(); } else if (source == deleteButton2) { getRelationsTable().editingStopped( new javax.swing.event.ChangeEvent(this)); row = getRelationsTable().getEditingRow(); if ( row < 0 ) { row = getRelationsTable().getSelectedRow(); if ( row < 0 ) return; } row = relationTableSorter.getMappedIndex(row); getTable().deleteRelation(getTable().getRelation(row)); /* select last item if the last field was deleted */ if (row == getTable().getRelations().size()) row--; getRelationsTable().setRowSelectionInterval(row, row); new TableHeaderRenderer( getRelationsTable().getModel(), getRelationsTable().getTableHeader() ); // if ( getRelationsTable().isEditing() ) // refreshComboBox(); } else if (source == helpButton) { String msg = "Instruction:\n"; msg = msg + "To add a relation, click on 'Add Relation' button then double click on the cell to start editing.\n"; msg = msg + "To delete a relation, select the relation row then click on the 'Delete Relation' button.\n"; msg = msg + "\nDescription:\n"; msg = msg + "Master Key - The key of this table mapping to the foreign key.\n"; msg = msg + "Foreign Table - Table which contains the foreign key to be mapped.\n"; msg = msg + "Foreign Key - Foreign key to be mapped.\n"; msg = msg + "\nTips:\n"; msg = msg + "Click on the table header to sort the column.\n"; msg = msg + "You can define more than one foreign key from the same foreign table.\n\n"; org.dbgen.gui.CommonDialog.showInformation(this, "Help on Relation Settings", msg); } else { throw new RuntimeException("BUG: Cannot find action button " + event); } // org.dbgen.Debug.println("Selecting row " + row); return; } /** * Gets the classNameField property (org.dbgen.view.TextField) value. * @return The classNameField property value. */ public org.dbgen.view.TextField getClassNameField() { /* Returns the classNameField property value. */ if (fieldClassNameField == null) { try { fieldClassNameField = new org.dbgen.view.TextField(); fieldClassNameField.addSetFieldListener(this, CLASS_NAME_FIELD); } catch (Throwable exception) { System.err.println("Exception creating classNameField property."); } }; return fieldClassNameField; } /** * Gets the cmbForeignKey property (javax.swing.JComboBox) value. * @return The cmbForeignKey property value. */ public JComboBox getCmbForeignKey() { if ( fieldCmbForeignKey == null ) fieldCmbForeignKey = new JComboBox( getForeignKeyComboBoxModel() ); return fieldCmbForeignKey; } /** * Gets the cmbForeignTable property (javax.swing.JComboBox) value. * @return The cmbForeignTable property value. */ public JComboBox getCmbForeignTable() { if ( fieldCmbForeignTable == null ) fieldCmbForeignTable = new JComboBox( getForeignTableComboBoxModel() ); return fieldCmbForeignTable; } /** * Gets the cmbMasterKey property (javax.swing.JComboBox) value. * @return The cmbMasterKey property value. * @see #setCmbMasterKey */ public JComboBox getCmbMasterKey() { if ( fieldCmbMasterKey == null ) fieldCmbMasterKey = new JComboBox( getMasterKeyComboBoxModel() ); return fieldCmbMasterKey; } /** * Gets the fieldsPanel property (javax.swing.JPanel) value. * @return The fieldsPanel property value. */ public javax.swing.JPanel getFieldsPanel() { /* Returns the fieldsPanel property value. */ if (fieldFieldsPanel == null) { try { fieldFieldsPanel = new javax.swing.JPanel(); } catch (Throwable exception) { System.err.println("Exception creating fieldsPanel property."); } }; return fieldFieldsPanel; } /** * Gets the fieldsTable property (javax.swing.JTable) value. * @return The fieldsTable property value. */ public JTable getFieldsTable() { /* Returns the fieldsTable property value. */ if (fieldFieldsTable == null) { try { fieldFieldsTable = new JTable(); } catch (Throwable exception) { System.err.println("Exception creating fieldsTable property."); } }; return fieldFieldsTable; } /** * Gets the foreignKeyComboBoxModel property (org.dbgen.view.DefaultComboBoxModel) value. * @return The foreignKeyComboBoxModel property value. */ public DefaultComboBoxModel getForeignKeyComboBoxModel() { if ( fieldForeignKeyComboBoxModel == null ) fieldForeignKeyComboBoxModel = new DefaultComboBoxModel(); return fieldForeignKeyComboBoxModel; } /** * Gets the foreignTableComboBoxModel property (org.dbgen.view.DefaultComboBoxModel) value. * @return The foreignTableComboBoxModel property value. */ public DefaultComboBoxModel getForeignTableComboBoxModel() { if ( fieldForeignTableComboBoxModel == null ) fieldForeignTableComboBoxModel = new DefaultComboBoxModel(); return fieldForeignTableComboBoxModel; } /** * Gets the generalPanel property (javax.swing.JPanel) value. * @return The generalPanel property value. */ public javax.swing.JPanel getGeneralPanel() { /* Returns the generalPanel property value. */ if (fieldGeneralPanel == null) { try { fieldGeneralPanel = new javax.swing.JPanel(); } catch (Throwable exception) { System.err.println("Exception creating generalPanel property."); } }; return fieldGeneralPanel; } /** * Gets the masterKeyComboBoxModel property (org.dbgen.view.DefaultComboBoxModel) value. * @return The masterKeyComboBoxModel property value. */ public DefaultComboBoxModel getMasterKeyComboBoxModel() { if ( fieldMasterKeyComboBoxModel == null ) fieldMasterKeyComboBoxModel = new DefaultComboBoxModel(); return fieldMasterKeyComboBoxModel; } /** * Gets the packageNameField property (org.dbgen.view.TextField) value. * @return The packageNameField property value. */ public org.dbgen.view.TextField getPackageNameField() { /* Returns the packageNameField property value. */ if (fieldPackageNameField == null) { try { fieldPackageNameField = new org.dbgen.view.TextField(); fieldPackageNameField.addSetFieldListener(this, PACKAGE_NAME_FIELD); } catch (Throwable exception) { System.err.println("Exception creating packageNameField property."); } }; return fieldPackageNameField; } /** * Gets the relationsPanel property (javax.swing.JPanel) value. * @return The relationsPanel property value. */ public javax.swing.JPanel getRelationsPanel() { /* Returns the relationsPanel property value. */ if (fieldRelationsPanel == null) { try { fieldRelationsPanel = new javax.swing.JPanel(); } catch (Throwable exception) { System.err.println("Exception creating relationsPanel property."); } }; return fieldRelationsPanel; } /** * Gets the relationsTable property (javax.swing.JTable) value. * @return The relationsTable property value. */ public JTable getRelationsTable() { /* Returns the fieldRelationsTable property value. */ if (fieldRelationsTable == null) { try { fieldRelationsTable = new JTable() { public boolean editCellAt(int row, int column, EventObject e) { //System.out.println( row +" " + column ); try { if ( column == COLUMN_FOREIGN_KEY ) { Object t = getRelationsTable().getValueAt(row, COLUMN_FOREIGN_TABLE); Object f = getRelationsTable().getValueAt(row, COLUMN_MASTER_KEY);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -