import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.table.DefaultTableModel;
import org.dyno.visual.swing.layouts.Bilateral;
import org.dyno.visual.swing.layouts.Constraints;
import org.dyno.visual.swing.layouts.GroupLayout;
import org.dyno.visual.swing.layouts.Leading;
//VS4E -- DO NOT REMOVE THIS LINE!
public class Artikelauswahl extends JFrame {
private static final long serialVersionUID = 1L;
private JTable jTableArtikel;
private JScrollPane jScrollPane0;
private JButton jButtonDetails;
private JButton jButtonBeenden;
private JButton jButtonHinzufuegen;
private JButton jButtonEntfernen;
private static final String PREFERRED_LOOK_AND_FEEL = "com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel";
public Artikelauswahl() {
initComponents();
}
private void initComponents() {
setTitle("Artikelauswahl");
setFont(new Font("Dialog", Font.PLAIN, 12));
setForeground(Color.black);
setLayout(new GroupLayout());
add(getJButtonDetails(), new Constraints(new Leading(4, 10, 10), new Leading(147, 10, 10)));
add(getJButtonBeenden(), new Constraints(new Leading(76, 10, 10), new Leading(147, 13, 13)));
add(getJButtonHinzufuegen(), new Constraints(new Leading(410, 10, 10), new Leading(147, 13, 13)));
add(getJButtonEntfernen(), new Constraints(new Leading(455, 10, 10), new Leading(147, 13, 13)));
add(getJScrollPane0(), new Constraints(new Bilateral(1, 5, 22), new Leading(0, 140, 10, 10)));
setSize(500, 175);
}
private JButton getJButtonEntfernen() {
if (jButtonEntfernen == null) {
jButtonEntfernen = new JButton();
jButtonEntfernen.setText("-");
jButtonEntfernen.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent event) {
jButtonEntfernenMouseMouseClicked(event);
}
});
}
return jButtonEntfernen;
}
private JButton getJButtonHinzufuegen() {
if (jButtonHinzufuegen == null) {
jButtonHinzufuegen = new JButton();
jButtonHinzufuegen.setText("+");
jButtonHinzufuegen.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent event) {
jButtonHinzufuegenMouseMouseClicked(event);
}
});
}
return jButtonHinzufuegen;
}
private JButton getJButtonBeenden() {
if (jButtonBeenden == null) {
jButtonBeenden = new JButton();
jButtonBeenden.setText("Beenden");
jButtonBeenden.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent event) {
jButtonBeendenMouseMouseClicked(event);
}
});
}
return jButtonBeenden;
}
private JButton getJButtonDetails() {
if (jButtonDetails == null) {
jButtonDetails = new JButton();
jButtonDetails.setText("Details");
jButtonDetails.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
jButtonDetailsActionActionPerformed(event);
}
});
}
return jButtonDetails;
}
public JTable getJTableArtikel() {
if (jTableArtikel == null) {
jTableArtikel = new JTable();
jTableArtikel.setModel(new DefaultTableModel(new Object[][] { { }, { }, }, new String[] {
"Artikelnummer", "Artikelbezeichnung", "Preis pro Stk.", "EAN-Nummer:", }) {
private static final long serialVersionUID = 1L;
Class<?>[] types = new Class<?>[] { Object.class, String.class, String.class, String.class, };
public Class<?> getColumnClass(int columnIndex) {
return types[columnIndex];
}
});
}
return jTableArtikel;
}
private JScrollPane getJScrollPane0() {
if (jScrollPane0 == null) {
jScrollPane0 = new JScrollPane();
jScrollPane0.setViewportView(getJTableArtikel());
}
return jScrollPane0;
}
private static void installLnF() {
try {
String lnfClassname = PREFERRED_LOOK_AND_FEEL;
if (lnfClassname == null)
lnfClassname = UIManager.getCrossPlatformLookAndFeelClassName();
UIManager.setLookAndFeel(lnfClassname);
} catch (Exception e) {
System.err.println("Cannot install " + PREFERRED_LOOK_AND_FEEL
+ " on this platform:" + e.getMessage());
}
}
/**
* Main entry of the class.
* Note: This class is only created so that you can easily preview the result at runtime.
* It is not expected to be managed by the designer.
* You can modify it as you like.
*/
public static void main(String[] args) {
installLnF();
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Artikelauswahl frame = new Artikelauswahl();
frame.setDefaultCloseOperation(Artikelauswahl.EXIT_ON_CLOSE);
frame.setTitle("Artikelauswahl");
frame.getContentPane().setPreferredSize(frame.getSize());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
});
}
//Programm beenden:
private void jButtonBeendenMouseMouseClicked(MouseEvent event) {
System.exit(0);
}
//Konstruktor für das neue POP-UP Fenster
public void jButtonDetailsActionActionPerformed(ActionEvent event) {
Artikeldetails Artikeldetails = new Artikeldetails();
Artikeldetails.setAlwaysOnTop(true);
Artikeldetails.setVisible(true);
Artikeldetails.setLocation(500, 500);
DefaultTableModel daten = new DefaultTableModel(new Object[][]{}, new String[]{"Artikelnummer", "Artikelbezeichnung", "Preis pro Stk.", "EAN-Nummer"});
for(int i=0; i<jTableArtikel.getRowCount(); i++){
daten.addRow(new Object[]{jTableArtikel.getValueAt(i, 0), jTableArtikel.getValueAt(i, 1), jTableArtikel.getValueAt(i, 2), jTableArtikel.getValueAt(i, 3)});
Object Artikelnummer = jTableArtikel.getValueAt(i, 0);
Object Artikelbezeichnung = jTableArtikel.getValueAt(i, 1);
Object PPS = jTableArtikel.getValueAt(i, 2);
Object EAN = jTableArtikel.getValueAt(i, 3);
}
jTableArtikel.setModel(daten);
}
//Button Hinzufügen:
public void jButtonHinzufuegenMouseMouseClicked(MouseEvent event) {
DefaultTableModel artikelliste = new DefaultTableModel(new Object[][]{}, new String[]{"Artikelnummer", "Artikelbezeichnung", "Preis pro Stk.", "EAN-Nummer:"});
for(int i=0; i<jTableArtikel.getRowCount(); i++){
artikelliste.addRow(new Object[]{jTableArtikel.getValueAt(i, 0), jTableArtikel.getValueAt(i, 1), jTableArtikel.getValueAt(i, 2), jTableArtikel.getValueAt(i, 3)});
}
artikelliste.addRow(new Object[]{JOptionPane.showInputDialog(null, "Artikelnummer eingeben"), JOptionPane.showInputDialog(null, "Artikelbezeichnung eingeben"), JOptionPane.showInputDialog(null, "Preis pro Stk. eingeben"), JOptionPane.showInputDialog(null, "EAN-Nummer eingeben")});
jTableArtikel.setModel(artikelliste);
}
//Button Entfernen (Einträge entfernen!)
public void jButtonEntfernenMouseMouseClicked(MouseEvent event) {
DefaultTableModel artikelliste = new DefaultTableModel(new Object[][]{}, new String[]{"Artikelnummer", "Artikelbezeichnung", "Preis pro Stk.", "EAN-Nummer:"});
for(int i=0; i<jTableArtikel.getRowCount(); i++){
artikelliste.addRow(new Object[]{jTableArtikel.getValueAt(i,0), jTableArtikel.getValueAt(i,1), jTableArtikel.getValueAt(i,2), jTableArtikel.getValueAt(i,3) });
}
int[]auswahl = jTableArtikel.getSelectedRows();
for(int i=auswahl.length-1; i>=0; i--){
artikelliste.removeRow(auswahl[i]);
}
jTableArtikel.setModel(artikelliste);
}
}