Нужен код фильтра для JTable - Java
Формулировка задачи:
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package tablens; import java.awt.BorderLayout; import java.awt.Desktop.Action; import java.awt.Dimension; import java.awt.EventQueue; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import javax.swing.*; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import javax.swing.table.DefaultTableModel; import javax.swing.JScrollPane; import javax.swing.JButton; import javax.swing.JTable; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; public class start extends JFrame implements ActionListener { private JPanel contentPane; private JTable table; private DefaultTableModel model; public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { @Override public void run() { try { start frame = new start(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } public start() { JMenuBar menubar = new JMenuBar(); JMenu menu = new JMenu("Файл"); JMenuItem itm; itm = new JMenuItem(new AbstractAction("Добавить строку") { @Override public void actionPerformed(ActionEvent a) { String[] data= { null, null, null }; //Добавим строку data в таблицу model.addRow(data); } }); menu.add(itm); itm.addActionListener(this); itm.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E, ActionEvent.ALT_MASK));; JMenu dev = new JMenu("Разработчик"); menu.add(new JSeparator()); JMenu submenu = new JMenu("Sub"); itm = new JMenuItem("Print"); itm.addActionListener(this); submenu.add(itm); itm = new JMenuItem("Export"); itm.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_E, ActionEvent.ALT_MASK)); itm.addActionListener(this); submenu.add(itm); menu.add(submenu); menubar.add(menu); menubar.add(dev); setJMenuBar(menubar); setTitle("Таблица"); setPreferredSize(new Dimension(640, 480)); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); contentPane.setLayout(new BorderLayout(0, 0)); setContentPane(contentPane); model = new DefaultTableModel(){ @Override public boolean isCellEditable(int row, int column){ return true; }; }; model.addColumn("Адрес"); model.addColumn("Право cобсветнности"); model.addColumn("Ф.И.О"); model.addColumn("Текущие начисления"); model.addColumn("Задолжность"); model.addColumn("ПЕНЯ"); model.addColumn("Период задолжности"); model.addColumn("Судебный приказ"); model.addColumn("Заявление ССП"); model.addColumn(""); model.addColumn(""); model.addColumn(""); model.addColumn(""); /* Если не использовать JScrollPane тогда не будут видны заголовки столбцов нашей таблицы */ JScrollPane scrollPane = new JScrollPane(); contentPane.add(scrollPane, BorderLayout.CENTER); /* Создадим таблицу и передадим в качесве параметра, передадим нашу модель */ table = new JTable(model); scrollPane.setViewportView(table); JPanel panel = new JPanel(); contentPane.add(panel, BorderLayout.SOUTH); JButton btnNewButton = new JButton("Добавить строку"); btnNewButton.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent arg0) { String[] data= { null, null, null }; //Добавим строку data в таблицу model.addRow(data); } }); JButton btnNewButton1 = new JButton("Удалить строку"); btnNewButton1.addActionListener(new ActionListener(){ @Override public void actionPerformed(ActionEvent event) { model.removeRow(table.getSelectedRow()); } }); panel.add(btnNewButton); panel.add(btnNewButton1); } private void setOpaque(boolean b) { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } @Override public void actionPerformed(ActionEvent arg0) { System.out.println(arg0.getActionCommand()); } }
Решение задачи: «Нужен код фильтра для JTable»
textual
Листинг программы
SELECT * FROM <TABLE Name> WHERE <Condition1> AND ... AND <ConditionN>
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д