Hallo zusammen,
ich hänge seit ca einer Woche an einem kleinen Problem. Mir sind viele Lösungsansätze durch den Kopf gegangen, die ich alle versucht habe. Leider hat keiner funktioniert. Auch Google konnte mir nicht wirklich weiter helfen (es kann auch sein das ich nicht nach den richtigen Stichworten gesucht habe wovon ich aber mal nicht ausgehe).
Habe folgenden Quellcode:
Fahrtnachweise.java
ErzeugeFrame.java
Layout.java
FahrtAdd.java
Und zwar soll wenn ich auf den Button Anzeigen drücke die Eingabemaske die in FahrtAdd erzeugt wird angezeigt werden. und zwar in ErzeugeFrame um CENTER.
Habe über den actionListener sämtliches versucht indem ich variablen gesetzt habe die ich versucht habe damit zu ändern in den verschiedenen Klassen, den Konstruktor geändert um eine boolean mit zu übergeben und das ganze auf setvisible true zu setzten und keine Ahnung was noch alles.
Bin für jeden kleinen Tipp dankbar.
BEVOR JEMAND HIER EINEN LAUFENDEN QUELLCODE POSTET BITTE ERST NUR HINWEISE!!!
ICH MÖCHTE NACH MÖGLICHKEIT DAS PROBLEM SELBER NOCH LÖSEN. VIELLEICHT DENKE ICH AUCH GERADE ZU KOMPLIZIERT ODER EINFACH NUR FALSCH.
Vielen Danke
ich hänge seit ca einer Woche an einem kleinen Problem. Mir sind viele Lösungsansätze durch den Kopf gegangen, die ich alle versucht habe. Leider hat keiner funktioniert. Auch Google konnte mir nicht wirklich weiter helfen (es kann auch sein das ich nicht nach den richtigen Stichworten gesucht habe wovon ich aber mal nicht ausgehe).
Habe folgenden Quellcode:
Fahrtnachweise.java
Java:
package Anwendung;
public class Fahrtnachweise {
public static void main(String[] args) {
ErzeugeFrame hauptFenster = new ErzeugeFrame();
hauptFenster.setVisible(true);
}
}
ErzeugeFrame.java
Java:
package Anwendung;
import java.awt.BorderLayout;
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.SwingConstants;
public class ErzeugeFrame extends JFrame{
private JLabel kopf;
private JPanel unten;
private JLabel cp;
public ErzeugeFrame(){
super("Fahrtnachweise");
kopf= new JLabel("Fahrtnachweise", SwingConstants.CENTER);
cp = new JLabel("Copyright");
Layout layout = new Layout();
FahrtAdd fahrtAdd = new FahrtAdd();
setSize(800, 600);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setResizable(true);
setLayout(new BorderLayout());
unten = new JPanel();
unten.setLayout(new BorderLayout());
unten.add(layout,BorderLayout.CENTER);
unten.add(cp,BorderLayout.SOUTH);
add(unten,BorderLayout.SOUTH);
//add(menuBar,BorderLayout.NORTH);
kopf.setFont(kopf.getFont().deriveFont(20f));
kopf.setPreferredSize(new Dimension(600,100));
add(fahrtAdd,BorderLayout.CENTER);
}
}
Layout.java
Java:
package Anwendung;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import javax.swing.JButton;
import javax.swing.JPanel;
public class Layout extends JPanel{
private GridBagConstraints c;
private JButton btnAnzeigen;
private JButton btnAddFahrt;
private JButton btnAddZahlung;
public Layout() {
setLayout(new GridBagLayout());
c = new GridBagConstraints();
btnAnzeigen = new JButton("Anzeigen");
btnAddFahrt = new JButton("Fahrt hinzufuegen");
btnAddZahlung = new JButton("Zahlung hinzufuegen");
c.fill = GridBagConstraints.HORIZONTAL;
c.gridx = 0;
c.gridy = 0;
add(btnAnzeigen,c);
c.gridx = 0;
c.gridy = 1;
add(btnAddFahrt,c);
c.gridx = 0;
c.gridy = 2;
add(btnAddZahlung,c);
}
}
FahrtAdd.java
Java:
package Anwendung;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class FahrtAdd extends JPanel{
private JTextField txtDatum;
private JTextField txtStartZweit;
private JTextField txtEndZeit;
private JTextField txtKm;
private JLabel lbDatum;
private JLabel lbStartZeit;
private JLabel lbEndZeit;
private JLabel lbKm;
private GridBagConstraints c1;
public FahrtAdd(){
setLayout(new GridBagLayout());
c1 = new GridBagConstraints();
lbDatum = new JLabel("Datum:");
lbStartZeit = new JLabel("Bebinn der Arbeit: ");
lbEndZeit = new JLabel("Ende der Arbeit: ");
lbKm = new JLabel("Gefahrene Kilometer: ");
txtDatum = new JTextField(8);
txtStartZweit = new JTextField(8);
txtEndZeit = new JTextField(8);
txtKm = new JTextField(8);
c1.fill =GridBagConstraints.HORIZONTAL;
c1.gridx = 0;
c1.gridy = 0;
add(lbDatum,c1);
c1.gridx = 0;
c1.gridy = 1;
add(lbStartZeit,c1);
c1.gridx = 0;
c1.gridy = 2;
add(lbEndZeit,c1);
c1.gridx = 0;
c1.gridy = 3;
add(lbKm,c1);
c1.gridx = 1;
c1.gridy = 0;
add(txtDatum,c1);
c1.gridx = 1;
c1.gridy = 1;
add(txtStartZweit,c1);
c1.gridx = 1;
c1.gridy = 2;
add(txtEndZeit,c1);
c1.gridx = 1;
c1.gridy = 3;
add(txtKm,c1);
setVisible(true);
}
}
Und zwar soll wenn ich auf den Button Anzeigen drücke die Eingabemaske die in FahrtAdd erzeugt wird angezeigt werden. und zwar in ErzeugeFrame um CENTER.
Habe über den actionListener sämtliches versucht indem ich variablen gesetzt habe die ich versucht habe damit zu ändern in den verschiedenen Klassen, den Konstruktor geändert um eine boolean mit zu übergeben und das ganze auf setvisible true zu setzten und keine Ahnung was noch alles.
Bin für jeden kleinen Tipp dankbar.
BEVOR JEMAND HIER EINEN LAUFENDEN QUELLCODE POSTET BITTE ERST NUR HINWEISE!!!
ICH MÖCHTE NACH MÖGLICHKEIT DAS PROBLEM SELBER NOCH LÖSEN. VIELLEICHT DENKE ICH AUCH GERADE ZU KOMPLIZIERT ODER EINFACH NUR FALSCH.
Vielen Danke