214, 150, 50);. Add (bLastRow);
}
Модуль StaffTab.javadbgui;java.awt.Rectangle;java.awt.event.ActionEvent;java.awt.event.ActionListener;java.sql.ResultSet;java.sql.SQLException;java.sql.Statement;javax.swing.ButtonGroup;javax.swing.JButton;javax.swing.JComboBox;javax.swing.JOptionPane;javax.swing.JPanel;javax.swing.JRadioButton;javax.swing.JScrollPane;javax.swing.JTable;javax.swing.JTextArea;javax.swing.JTextField;javax.swing.ListSelectionModel;javax.swing.table.DefaultTableModel;
/ ** Клас, який реалізує вкладку Персонал. * / StaffTab {
/ ** Компоненти, що реалізують підключення до бази даних. * / Static String TABLE_NAME=«Персонал»; Statement state; ResultSet rs;
static String sql;
/ ** Компоненти для створення таблиці. * / Static JTable table; static DefaultTableModel tableModel;
/ ** Компоненти для модифікації таблиці. * / Static JButton bAddRow; static JButton bRemoveRow; static JButton bSaveRow;
/ ** Компоненти для сортування / фільтрації. * / Static JComboBox cbSortFilter; static JButton bFilter; static JButton bSort; static JRadioButton rbSortAsc; static JRadioButton rbSortDesc; static JTextField tfFilter; static boolean filterFlag;
/ ** Компоненти для реалізації користувальницького введення SQL-запитів. * / Static JTextArea taCustomSQL; static JScrollPane spCustomSQL; static JButton bCustomSQL; static boolean customSQLFlag;
/ ** Ініціалізація вкладки. * / JPanel initTab () {
/ ** Створення таблиці за її моделі. * /=New JTable();.setRowHeight(20);.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);();.setModel(tableModel);.getTableHeader().setReorderingAllowed(false);.getColumnModel().getColumn(0).setPreferredWidth(70);.getColumnModel().getColumn(1).setPreferredWidth(125);.getColumnModel().getColumn(2).setPreferredWidth(125);.getColumnModel().getColumn(3).setPreferredWidth(125);.getColumnModel().getColumn(4).setPreferredWidth(85);.getColumnModel().getColumn(5).setPreferredWidth(150);.getColumnModel().getColumn(6).setPreferredWidth(150);.getColumnModel().getColumn(7).setPreferredWidth(150);{();();.setRowSelectionInterval(0, 0);
} catch (Exception ex) {
} spTable=new JScrollPane (table);. setBounds (12, 12, 998, 180); staffTab=new JPanel ();. setLayout (null);. add (spTable); p>
/ ** Реалізація конструктора класу TabContent для вкладки. * / TabContent (staffTab);
/ ** Ініціалізація компонентів. * / (StaffTab); (staffTab); (staffTab);
/ ** Ініціалізація дій для компонентів. * /
initNavCompsActions ();
initTableModCompsActions (); (); ();
/ ** Возвратготовойвкладкі. * / StaffTab;
}
/ ** Ініціалізація моделі таблиці. * /
@ SuppressWarnings ({«serial», «rawtypes»})
public static void initTableModel () {= new DefaultTableModel (Object [] [] {}, String [] {
«Код_раб», «Прізвище», «Ім'я», «По батькові», «Цех», «Посада», «Спеціалізація», «Кваліфікація»