Ich möchte, dass wenn ich auf den Button "search" klicke, nur die Daten im SearchDetails auf den Fahrzeugtabelle gezeigt werden. Ich schicke den Frame und auch Coden dazu.
package de.hs_kl.oopr_22.fleet_manager;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.RowFilter;
import javax.swing.SwingConstants;
import javax.swing.border.EmptyBorder;
import javax.swing.border.LineBorder;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
@SuppressWarnings("serial")
public class GUI extends JFrame {
protected static JComboBox<?> cmbDetailsVehiclesType = null;
private GUIActions fleetManagerActions;
private JTable tblVehicles;
private JTextField txtSearchZipcode;
private JTextField txtSearchLicensePlateNumber;
private JTextField txtDetailsLicensePlateNumber;
private JTextField txtLocationStreet;
private JTextField txtLocationName;
private JTextField txtLocationZipcode;
private JTextField txtLocationCity;
private JLabel lbDetailsVehicleId;
private JComboBox<?> cmbSearchVehicleType;
private JComboBox cmbDetailsLocation;
private JPanel contentPanel;
private JLabel lblSearchLicensePlateNumber;
private JPanel pnlDetailsVehicles;
private JLabel lblVehicleDetails;
private JLabel lblDetailsVehicleType;
private JLabel lblDetailsLicensePlateNumber;
private JLabel lblSearchEmptyCell;
private JSeparator hlnLocation;
private JLabel lblLocation;
private JPanel pnlLocation;
private JLabel lblLocationDisplayName;
private JLabel lblLocationStreet;
private JLabel lblLocationZipcode;
private JLabel lblLocationCity;
private JButton btnAddLocation;
private JButton btnSave;
private VehicleDatabase vehicleDatabase;
private Vehicle vehicle;
private LocationDatabase locationDatabase; // new
protected boolean isExistPlat;
// private static LocationField locationSaved;
private DefaultTableModel model = new DefaultTableModel();
private JTable jTable = new JTable(model);
private TableRowSorter<TableModel> rowSorter = new TableRowSorter<>(jTable.getModel());
private JTextField jtfFilter = new JTextField();
private JButton jbtFilter = new JButton("Filter");
/**
* Create the frame.
*/
@SuppressWarnings({ "unchecked", "static-access", "rawtypes" })
public GUI() {
// window
setTitle("Flottenmanager");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 828, 525);
contentPanel = new JPanel();
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPanel);
contentPanel.setLayout(null);
// Label panet title : Flottenmanager
JLabel lblApplicationTitle = new JLabel("Flottenmanager");
lblApplicationTitle.setFont(new Font("Tahoma", Font.PLAIN, 35));
lblApplicationTitle.setBounds(10, 10, 255, 43);
contentPanel.add(lblApplicationTitle);
JPanel pnlSearchVehicles = new JPanel();
pnlSearchVehicles.setBorder(null);
pnlSearchVehicles.setBounds(10, 63, 485, 43);
contentPanel.add(pnlSearchVehicles);
// TextField Kennzeichen
txtSearchLicensePlateNumber = new JTextField();
txtSearchLicensePlateNumber.setColumns(10);
txtSearchZipcode = new JTextField();
txtSearchZipcode.setColumns(10);
pnlSearchVehicles.setLayout(new GridLayout(2, 4, 0, 0));
// Label Kennzeichen
lblSearchLicensePlateNumber = new JLabel("Kennzeichen");
pnlSearchVehicles.add(lblSearchLicensePlateNumber);
// label Fahrzeugart
JLabel lblSearchVehicleType = new JLabel("Fahrzeugart");
pnlSearchVehicles.add(lblSearchVehicleType);
// Label Standort PLZ
JLabel lblSearchZipcode = new JLabel("Standort PLZ");
pnlSearchVehicles.add(lblSearchZipcode);
// TextField Kennzeichen
lblSearchEmptyCell = new JLabel(" ");
pnlSearchVehicles.add(lblSearchEmptyCell);
pnlSearchVehicles.add(txtSearchLicensePlateNumber);
// Combobox fahrzeugart
String[] fahrzeugart = { "Lkw", "Pkw", "Transporter" };
cmbSearchVehicleType = new JComboBox(fahrzeugart);
pnlSearchVehicles.add(cmbSearchVehicleType);
pnlSearchVehicles.add(txtSearchZipcode);
JButton btnSearch = new JButton("Suchen");
pnlSearchVehicles.add(btnSearch);
JButton jButton = new JButton();
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnSearch) {
// txtSearchLicensePlateNumber.setText(getName());
} else if (cmbSearchVehicleType.getSelectedItem() == "lkw") {
txtSearchLicensePlateNumber.setText(getName());
txtSearchZipcode.setText(getName());
} else if (cmbSearchVehicleType.getSelectedItem() == "pkw") {
txtSearchLicensePlateNumber.setText(getName());
txtSearchZipcode.setText(getName());
} else if (cmbSearchVehicleType.getSelectedItem() == "transporter") {
txtSearchLicensePlateNumber.setText(getName());
txtSearchZipcode.setText(getName());
// HIER KÖNNEN SIE WEITERE PARAMETER FÜR DIE SUCHE HINZUFÜGEN
fleetManagerActions.search(txtSearchLicensePlateNumber.getName());
}
}
});
JScrollPane pnlTable = new JScrollPane();
pnlTable.setBounds(10, 180, 485, 283);
contentPanel.add(pnlTable);
tblVehicles = new JTable();
tblVehicles.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
tblVehicles.setBackground(Color.WHITE);
pnlTable.setViewportView(tblVehicles);
package de.hs_kl.oopr_22.fleet_manager;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.RowFilter;
import javax.swing.SwingConstants;
import javax.swing.border.EmptyBorder;
import javax.swing.border.LineBorder;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
@SuppressWarnings("serial")
public class GUI extends JFrame {
protected static JComboBox<?> cmbDetailsVehiclesType = null;
private GUIActions fleetManagerActions;
private JTable tblVehicles;
private JTextField txtSearchZipcode;
private JTextField txtSearchLicensePlateNumber;
private JTextField txtDetailsLicensePlateNumber;
private JTextField txtLocationStreet;
private JTextField txtLocationName;
private JTextField txtLocationZipcode;
private JTextField txtLocationCity;
private JLabel lbDetailsVehicleId;
private JComboBox<?> cmbSearchVehicleType;
private JComboBox cmbDetailsLocation;
private JPanel contentPanel;
private JLabel lblSearchLicensePlateNumber;
private JPanel pnlDetailsVehicles;
private JLabel lblVehicleDetails;
private JLabel lblDetailsVehicleType;
private JLabel lblDetailsLicensePlateNumber;
private JLabel lblSearchEmptyCell;
private JSeparator hlnLocation;
private JLabel lblLocation;
private JPanel pnlLocation;
private JLabel lblLocationDisplayName;
private JLabel lblLocationStreet;
private JLabel lblLocationZipcode;
private JLabel lblLocationCity;
private JButton btnAddLocation;
private JButton btnSave;
private VehicleDatabase vehicleDatabase;
private Vehicle vehicle;
private LocationDatabase locationDatabase; // new
protected boolean isExistPlat;
// private static LocationField locationSaved;
private DefaultTableModel model = new DefaultTableModel();
private JTable jTable = new JTable(model);
private TableRowSorter<TableModel> rowSorter = new TableRowSorter<>(jTable.getModel());
private JTextField jtfFilter = new JTextField();
private JButton jbtFilter = new JButton("Filter");
/**
* Create the frame.
*/
@SuppressWarnings({ "unchecked", "static-access", "rawtypes" })
public GUI() {
// window
setTitle("Flottenmanager");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 828, 525);
contentPanel = new JPanel();
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPanel);
contentPanel.setLayout(null);
// Label panet title : Flottenmanager
JLabel lblApplicationTitle = new JLabel("Flottenmanager");
lblApplicationTitle.setFont(new Font("Tahoma", Font.PLAIN, 35));
lblApplicationTitle.setBounds(10, 10, 255, 43);
contentPanel.add(lblApplicationTitle);
JPanel pnlSearchVehicles = new JPanel();
pnlSearchVehicles.setBorder(null);
pnlSearchVehicles.setBounds(10, 63, 485, 43);
contentPanel.add(pnlSearchVehicles);
// TextField Kennzeichen
txtSearchLicensePlateNumber = new JTextField();
txtSearchLicensePlateNumber.setColumns(10);
txtSearchZipcode = new JTextField();
txtSearchZipcode.setColumns(10);
pnlSearchVehicles.setLayout(new GridLayout(2, 4, 0, 0));
// Label Kennzeichen
lblSearchLicensePlateNumber = new JLabel("Kennzeichen");
pnlSearchVehicles.add(lblSearchLicensePlateNumber);
// label Fahrzeugart
JLabel lblSearchVehicleType = new JLabel("Fahrzeugart");
pnlSearchVehicles.add(lblSearchVehicleType);
// Label Standort PLZ
JLabel lblSearchZipcode = new JLabel("Standort PLZ");
pnlSearchVehicles.add(lblSearchZipcode);
// TextField Kennzeichen
lblSearchEmptyCell = new JLabel(" ");
pnlSearchVehicles.add(lblSearchEmptyCell);
pnlSearchVehicles.add(txtSearchLicensePlateNumber);
// Combobox fahrzeugart
String[] fahrzeugart = { "Lkw", "Pkw", "Transporter" };
cmbSearchVehicleType = new JComboBox(fahrzeugart);
pnlSearchVehicles.add(cmbSearchVehicleType);
pnlSearchVehicles.add(txtSearchZipcode);
JButton btnSearch = new JButton("Suchen");
pnlSearchVehicles.add(btnSearch);
JButton jButton = new JButton();
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnSearch) {
// txtSearchLicensePlateNumber.setText(getName());
} else if (cmbSearchVehicleType.getSelectedItem() == "lkw") {
txtSearchLicensePlateNumber.setText(getName());
txtSearchZipcode.setText(getName());
} else if (cmbSearchVehicleType.getSelectedItem() == "pkw") {
txtSearchLicensePlateNumber.setText(getName());
txtSearchZipcode.setText(getName());
} else if (cmbSearchVehicleType.getSelectedItem() == "transporter") {
txtSearchLicensePlateNumber.setText(getName());
txtSearchZipcode.setText(getName());
// HIER KÖNNEN SIE WEITERE PARAMETER FÜR DIE SUCHE HINZUFÜGEN
fleetManagerActions.search(txtSearchLicensePlateNumber.getName());
}
}
});
JScrollPane pnlTable = new JScrollPane();
pnlTable.setBounds(10, 180, 485, 283);
contentPanel.add(pnlTable);
tblVehicles = new JTable();
tblVehicles.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
tblVehicles.setBackground(Color.WHITE);
pnlTable.setViewportView(tblVehicles);