Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package unternehmen;
- import java.awt.BorderLayout;
- import java.awt.Color;
- import java.awt.Container;
- import java.awt.Dimension;
- import java.awt.FlowLayout;
- import java.awt.Font;
- import java.awt.GridBagConstraints;
- import java.awt.GridBagLayout;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.util.ListIterator;
- import javax.swing.BoxLayout;
- import javax.swing.JButton;
- import javax.swing.JCheckBox;
- import javax.swing.JComboBox;
- import javax.swing.JLabel;
- import javax.swing.JOptionPane;
- import javax.swing.JPanel;
- import javax.swing.JTextField;
- public class InputPanel extends JPanel {
- private PanelManager panelManager;
- public InputPanel(PanelManager panelManager) {
- this.panelManager = panelManager;
- buildGUI();
- }
- private Font f,f2;
- private JLabel jlbName_Produkt, jlbProduktkosten, jlbVerkaufswDesProduktes, jlbNameDerMaschine, jlbKostenDerMaschine, jlbErzeugnisDerMaschinen, jlbAnzahlderBedingungen, jlbBeschreibungDesTestguthabens, jlbWertDesTestguthabens, jlbAnzahlDerTestrunden, jlbBedingung, jlbUeberschrift1, jlbUeberschrift2, jlbUeberschrift3;
- private JTextField jtfNameDesProdukts, jtfKostenDesProdukts, jtfVerkaufswertDesProdukts, jtfNameDerMaschine, jtfKostenDerMaschine, jtfAnzahlDerBedingungen, jtfAnzahlDerTestrunden;
- private JComboBox<String> jcbErzeugnis, jcbBedingung;
- private JCheckBox jchbAbhaengigkeit;
- private JButton jbNeuProdukt, jbNeuMaschine, jbFabrikZuruecksetzen, jbFabrikTestStarten;
- private void buildGUI() {
- f = new Font("Arial_BLACK", Font.BOLD, 30);
- f2 = new Font("ARIAL", Font.BOLD, 20);
- jlbName_Produkt = new JLabel("Name:");
- jlbProduktkosten = new JLabel("Produktionskosten:");
- jlbVerkaufswDesProduktes = new JLabel("Verkaufswert:");
- jlbNameDerMaschine = new JLabel("Name:");
- jlbKostenDerMaschine = new JLabel("Kosten:");
- jlbErzeugnisDerMaschinen = new JLabel("Erzeugnis:");
- jlbAnzahlderBedingungen = new JLabel("Anzahl:");
- jlbBeschreibungDesTestguthabens = new JLabel("Testguthaben:");
- jlbWertDesTestguthabens = new JLabel(String.valueOf(panelManager.getTestguthaben()));
- jlbAnzahlDerTestrunden = new JLabel("Anzahl der Runden:");
- jlbBedingung = new JLabel(" Bedingung?");
- jlbUeberschrift1 = new JLabel("<HTML><U>Produkt</U></HTML>");
- jlbUeberschrift2 = new JLabel("<HTML><U>Maschine</U></HTML>");
- jlbUeberschrift3 = new JLabel("<HTML><U>Fabriktests</U></HTML>");
- jtfNameDesProdukts = new JTextField(15);
- jtfKostenDesProdukts = new JTextField(15);
- jtfVerkaufswertDesProdukts = new JTextField(15);
- jtfNameDerMaschine = new JTextField(15);
- jtfKostenDerMaschine = new JTextField(15);
- jtfAnzahlDerBedingungen = new JTextField(15);
- jtfAnzahlDerTestrunden = new JTextField(15);
- jcbErzeugnis = new JComboBox<String>();
- jcbBedingung = new JComboBox<String>();
- jchbAbhaengigkeit = new JCheckBox();
- jbNeuProdukt = new JButton("Produkt anlegen");
- jbNeuMaschine = new JButton("Neue Maschine anlegen");
- jbFabrikZuruecksetzen = new JButton("Fabrik zurücksetzen");
- jbFabrikTestStarten = new JButton("Test starten");
- setLayout(new GridBagLayout());
- GridBagConstraints c = new GridBagConstraints();
- c.anchor = GridBagConstraints.FIRST_LINE_START;
- c.weightx = 0.5;
- c.weighty = 0.5;
- c.gridx = 0;
- c.gridy = 0;
- add(jlbUeberschrift1,c);
- jlbUeberschrift1.setFont(f);
- c.gridx = 0;
- c.gridy = 1;
- add(jlbName_Produkt, c);
- jlbName_Produkt.setFont(f2);
- c.gridx = 0;
- c.gridy = 2;
- add(jlbProduktkosten, c);
- jlbProduktkosten.setFont(f2);
- c.gridx = 0;
- c.gridy = 3;
- add(jlbVerkaufswDesProduktes, c);
- jlbVerkaufswDesProduktes.setFont(f2);
- c.gridx = 0;
- c.gridy = 4;
- add(jlbUeberschrift2, c);
- jlbUeberschrift2.setFont(f);
- c.gridx = 0;
- c.gridy = 5;
- add(jlbNameDerMaschine, c);
- jlbNameDerMaschine.setFont(f2);
- c.gridx = 0;
- c.gridy = 6;
- add(jlbKostenDerMaschine, c);
- jlbKostenDerMaschine.setFont(f2);
- c.gridx = 0;
- c.gridy = 7;
- add(jlbErzeugnisDerMaschinen, c);
- jlbErzeugnisDerMaschinen.setFont(f2);
- c.gridx = 0;
- c.gridy = 8;
- add(jchbAbhaengigkeit, c);
- jchbAbhaengigkeit.setBackground(Color.LIGHT_GRAY);
- jchbAbhaengigkeit.setSize(100,100);
- jchbAbhaengigkeit.setFont(f);
- c.gridx = 0;
- c.gridy = 8;
- add(jlbBedingung, c);
- jlbBedingung.setFont(f2);
- c.gridx = 0;
- c.gridy = 9; //***//
- add(jlbAnzahlderBedingungen, c);
- jlbAnzahlderBedingungen.setFont(f2);
- c.gridx = 0;
- c.gridy = 10;
- add(jlbUeberschrift3, c);
- jlbUeberschrift3.setFont(f);
- c.gridx = 0;
- c.gridy = 11;
- add(jlbBeschreibungDesTestguthabens, c);
- jlbBeschreibungDesTestguthabens.setFont(f2);
- c.gridx = 0;
- c.gridy = 12;
- add(jlbAnzahlDerTestrunden, c);
- jlbAnzahlDerTestrunden.setFont(f2);
- c.anchor = GridBagConstraints.CENTER;
- c.gridx = 0;
- c.gridy = 13;
- add(jbFabrikZuruecksetzen, c);
- jbFabrikZuruecksetzen.setFont(f2);
- // Naechste Spalte //
- c.anchor = GridBagConstraints.FIRST_LINE_END; //HIER//
- c.gridx = 1;
- c.gridy = 1;
- add(jtfNameDesProdukts, c);
- jtfNameDesProdukts.setFont(f2);
- c.gridx = 1;
- c.gridy = 2;
- add(jtfKostenDesProdukts, c);
- jtfKostenDesProdukts.setFont(f2);
- c.gridx = 1;
- c.gridy = 3;
- add(jtfVerkaufswertDesProdukts, c);
- jtfVerkaufswertDesProdukts.setFont(f2);
- // c.anchor = GridBagConstraints.CENTER;
- // c.gridx = 1;
- // c.gridy = 4;
- // add(jbNeuProdukt, c);
- // jbNeuProdukt.setFont(f2);
- c.gridx = 1;
- c.gridy = 5;
- add(jtfNameDerMaschine, c);
- jtfNameDerMaschine.setFont(f2);
- c.gridx = 1;
- c.gridy = 6;
- add(jtfKostenDerMaschine, c);
- jtfKostenDerMaschine.setFont(f2);
- c.gridx = 1;
- c.gridy = 7;
- add(jcbErzeugnis, c);
- jcbErzeugnis.setFont(f2);
- c.gridx = 1;
- c.gridy = 8;
- add(jcbBedingung, c);
- jcbBedingung.setFont(f2);
- c.gridx = 1;
- c.gridy = 9;
- add(jtfAnzahlDerBedingungen, c);
- jtfAnzahlDerBedingungen.setFont(f2);
- c.gridx = 1;
- c.gridy = 4;
- add(jbNeuMaschine, c);
- jbNeuMaschine.setFont(f2);
- // c.anchor = GridBagConstraints.FIRST_LINE_END;
- // c.gridx = 1;
- // c.gridy = 11;
- // add(jlbWertDesTestguthabens, c);
- // jlbWertDesTestguthabens.setFont(f2);
- c.gridx = 1;
- c.gridy = 12;
- add(jtfAnzahlDerTestrunden, c);
- jtfAnzahlDerTestrunden.setFont(f2);
- // c.gridx = 1;
- // c.gridy = 13;
- // add(jbFabrikTestStarten, c);
- // jbFabrikTestStarten.setFont(f2);
- // Ausserhalb, da die nächsten Reihen sonst manipuliert werden
- c.anchor = GridBagConstraints.CENTER;
- c.gridx = 1;
- c.gridy = 0;
- add(jbNeuProdukt, c);
- jbNeuProdukt.setFont(f2);
- c.gridx = 1;
- c.gridy = 13;
- add(jbFabrikTestStarten, c);
- jbFabrikTestStarten.setFont(f2);
- //c.anchor = GridBagConstraints.FIRST_LINE_END;
- c.gridx = 1;
- c.gridy = 11;
- add(jlbWertDesTestguthabens, c);
- jlbWertDesTestguthabens.setFont(f2);
- // c.gridx = 1;
- // c.gridy = 8;
- // add(jlbBedingung, c);
- // jlbBedingung.setFont(f2);
- jbNeuProdukt.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- try{
- String input_name = jtfNameDesProdukts.getText();
- double input_kosten = Double.parseDouble(jtfKostenDesProdukts.getText());
- double input_verkaufswert = Double.parseDouble(jtfVerkaufswertDesProdukts.getText());
- Produkt neu = new Produkt(input_name, input_kosten, input_verkaufswert);
- panelManager.addOrReplaceProduktentwurf(neu);
- System.out.println(neu.getname() + "wurde erfolgreich hinzugefügt!");
- }
- catch(NumberFormatException e) {
- System.out.println("Für eine Produkterstellung wurden keine Daten eingegeben!");
- }
- catch(Exception e2) {
- System.out.println("Falsche oder keine Eingabe!");
- }
- }
- });
- }
- public void updateData() {
- jcbErzeugnis.removeAllItems();
- jcbBedingung.removeAllItems();
- ListIterator<Produkt> listIterator = panelManager.getProduktentwuerfe().listIterator();
- while(listIterator.hasNext()) {
- Produkt produkt = listIterator.next();
- jcbErzeugnis.addItem(produkt.getname());
- jcbBedingung.addItem(produkt.getname());
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement