Hallo zusammen,
ich bin der neue hier und begrüße erstmal alle.
Da ich mich seit kurzem mit Java beschäftige ist mir dieses Forum in Auge gefallen und hat mir sofort gefallen. Da ich bis jetzt alle Probleme mit Hilfe von Google lösen konnte musste ich das geballte Wissen des Forums noch nicht in Anspruch nehmen, doch jetzt ist es soweit.
Was Programmieren angeht bin ich relativ unerfahren, bis jetzt nur etwas C. Leider hilft mir das bei Java nur bedingt. Um mich aber einzuarbeiten habe ich direkt mal ein kleines Projekt gestartet. Um das lernen interessanter zu gestalten. Ich habe mir vorgenommen ein kleines Statistikprogramm zu entwickeln das auch bei kleineren Veranstaltungen zum Einsatz kommen soll. Dabei geht es darum festzuhalten weiviel von einem Artikel verkauft wurde und wieviel noch verkauft werden muss um die Gewinnschwelle zu erreichen. Beispielsweise wurden 20 x Gummibärchen für 10€ gekauft und bereits 10 x Gummibärchen verkauft macht also ein Umsatz von 10€ und bis die Gewinnschwelle erreicht ist müssen nochmal 10€ eingenommen werden.
So aber jetzt zu meinem eigentlichen Problem.
Erstmal mein bisheriger Code:
Main Class
MainMenue Class
So ich habe jetzt ein array vom typ ArtikelList in dem die Artikel zum bearbeiten liegen sollen im Main erzeugt. Nur wie ist es mir möglich dieses Array im MainMenue beim entsprechenden ActionListener zu nutzen? Es muss ja nochmals weitergegeben werden an das Menue Artikel_add, hier sollen dann die relevanten Daten eingegeben werden und an die Methode setArtikel übergeben werden um sie ins Array einzufügen. Ich hoffe das ist so verständlich. Zudem würde ich mich freuen wenn ich noch weiteren feedback zu meinem bisherigen Code bekommen würde. Auch wenn er für einen geübten Programmierer wohl eine Katastrophe sein wird.
Ja dann hoffe ich das mir geholfen werden kann.
ich bin der neue hier und begrüße erstmal alle.
Da ich mich seit kurzem mit Java beschäftige ist mir dieses Forum in Auge gefallen und hat mir sofort gefallen. Da ich bis jetzt alle Probleme mit Hilfe von Google lösen konnte musste ich das geballte Wissen des Forums noch nicht in Anspruch nehmen, doch jetzt ist es soweit.
Was Programmieren angeht bin ich relativ unerfahren, bis jetzt nur etwas C. Leider hilft mir das bei Java nur bedingt. Um mich aber einzuarbeiten habe ich direkt mal ein kleines Projekt gestartet. Um das lernen interessanter zu gestalten. Ich habe mir vorgenommen ein kleines Statistikprogramm zu entwickeln das auch bei kleineren Veranstaltungen zum Einsatz kommen soll. Dabei geht es darum festzuhalten weiviel von einem Artikel verkauft wurde und wieviel noch verkauft werden muss um die Gewinnschwelle zu erreichen. Beispielsweise wurden 20 x Gummibärchen für 10€ gekauft und bereits 10 x Gummibärchen verkauft macht also ein Umsatz von 10€ und bis die Gewinnschwelle erreicht ist müssen nochmal 10€ eingenommen werden.
So aber jetzt zu meinem eigentlichen Problem.
Erstmal mein bisheriger Code:
Main Class
Java:
package main;
import javax.swing.*;
import java.awt.*;
import shop.functions.*;
import shop.grafical.*;
public class Main
{
public static void main(String[] args)
{
ArtikelList liste = new ArtikelList();
new MainMenue();
}
}
MainMenue Class
Java:
package shop.grafical;
import java.awt.event.ActionEvent;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JLabel;
import shop.functions.*;
public class MainMenue extends JFrame
{
private JFrame menue;
private JButton arti_neu;
private JButton arti_zeigen;
private JButton vmenue;
private JButton ende;
private JButton einkauf;
private JLabel copy;
private JLabel header;
public MainMenue()
{
menue = new JFrame("Info System");
menue.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
menue.setSize(400,420);
menue.setVisible(true);
menue.setLocationRelativeTo(null);
//Layoutmanager abschalten Layout kann manuell gesetzt werden
menue.setLayout(null);
//Buttons anlegen
arti_neu = new JButton("Artikel hinzufügen");
arti_zeigen = new JButton("Artikel anzeigen");
vmenue = new JButton("Verkauf starten");
ende = new JButton("Programm ende");
einkauf = new JButton("Aufwendungen");
header = new JLabel("Info System Alpha 0.01");
copy = new JLabel("© Author");
arti_neu.setBounds(50,30,300,50);
menue.add(arti_neu);
arti_zeigen.setBounds(50,85,300,50);
menue.add(arti_zeigen);
einkauf.setBounds(50,140,300,50);
menue.add(einkauf);
vmenue.setBounds(50,195,300,50);
menue.add(vmenue);
ende.setBounds(50,250,300,50);
menue.add(ende);
header.setBounds(70,320,300,30);
menue.add(header);
copy.setBounds(150,335,300,30);
menue.add(copy);
menue.addWindowListener(new WindowListener()
{
public void windowClosed(WindowEvent arg0)
{
System.exit(0);
}
public void windowActivated(WindowEvent e) {}
public void windowClosing(WindowEvent e) {}
public void windowDeactivated(WindowEvent e) {}
public void windowDeiconified(WindowEvent e) {}
public void windowIconified(WindowEvent e) {}
public void windowOpened(WindowEvent e) {}
});
arti_neu.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent arg0)
{
Artikel_add add = new Artikel_add();
}
});
ende.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent arg0)
{
System.exit(0);
}
});
}
}
Java:
package shop.grafical;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JFrame;
import main.*;
import shop.functions.Artikel;
import shop.functions.ArtikelList;
public class Artikel_add
{
private JTextField e_name;
private JTextField e_preis;
private JLabel header;
private JLabel head_name;
private JLabel head_preis;
private JFrame menue;
private JButton save;
private JButton reset;
public Artikel_add()
{
menue = new JFrame("Artikel hinzufügen");
menue.setSize(500,400);
menue.setVisible(true);
menue.setLocationRelativeTo(null);
menue.setLayout(null);
e_name = new JTextField();
e_preis = new JTextField();
header = new JLabel("Bitte Artikel Daten eingeben");
head_name = new JLabel("Artikel Name");
head_preis = new JLabel("Artikel Preis");
save = new JButton("Speichern");
reset = new JButton("Reset");
header.setBounds(30,10,200,30);
menue.add(header);
head_name.setBounds(30,60,200,30);
menue.add(head_name);
e_name.setBounds(30,95,400,30);
menue.add(e_name);
head_preis.setBounds(30,135,200,30);
menue.add(head_preis);
e_preis.setBounds(30,170,400,30);
menue.add(e_preis);
save.setBounds(100,280,140,35);
menue.add(save);
reset.setBounds(250,280,140,35);
menue.add(reset);
reset.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent arg0)
{
menue.dispose();
Artikel_add add = new Artikel_add();
}
});
save.addActionListener(new ActionListener()
{
float p = 0;
float x = 0;
String s;
public void actionPerformed(ActionEvent arg0)
{
try
{
p = Float.parseFloat(e_preis.getText());
s = e_name.getText();
}
catch(NumberFormatException e)
{
}
Artikel art = new Artikel();
art.setArtikel(s, p, x);
}
});
}
}
So ich habe jetzt ein array vom typ ArtikelList in dem die Artikel zum bearbeiten liegen sollen im Main erzeugt. Nur wie ist es mir möglich dieses Array im MainMenue beim entsprechenden ActionListener zu nutzen? Es muss ja nochmals weitergegeben werden an das Menue Artikel_add, hier sollen dann die relevanten Daten eingegeben werden und an die Methode setArtikel übergeben werden um sie ins Array einzufügen. Ich hoffe das ist so verständlich. Zudem würde ich mich freuen wenn ich noch weiteren feedback zu meinem bisherigen Code bekommen würde. Auch wenn er für einen geübten Programmierer wohl eine Katastrophe sein wird.
Ja dann hoffe ich das mir geholfen werden kann.