Zum Inhalt springen

Mage3000

Mitglieder
  • Gesamte Inhalte

    7
  • Benutzer seit

  • Letzter Besuch

  1. Probelm gelöst...mit einem Actionadapter gehts besser und hatte meine Konstrukturen aufrufe in der falschen Klasse gesetzt...Dank an alle die sich mit meinem Problem auseinandergesetzt haben
  2. Ah...jetzt weiß ich erstmal auf was du das bezogen hast :upps...Nicht verwirren lassen...das new Button ist nur meine Klasse in der ich dann aber JButtons erstelle
  3. Hmmm...klingt logisch also werd ich das mal bissl umbaun...die buttons und menubar in einer klasse unterbringen...dann hab ich nurnoch einen aktionlistener..
  4. import javax.swing.*; public class Hauptprog{ /** * @param args */ public static void main(String[] args) { Menufenster Fenster = new Menufenster(); new Button(Fenster); new Ausgabe(Fenster); new ActionAdapter(Fenster); Fenster.pack(); Fenster.setSize(1000,700); Fenster.setVisible(true); } } Also müsste ich das so machen nehm ich an...Mein Problem ist jetzt der ActionAdapter...der wird zweimal aufgerufen...einmal wie oben im Menufenster und einmal in der Klasse Button...Ich habe einmal datei laden im Menufenster und einmal als Button am unteren teil des JFrames. Wenn ich jetzt über datei laden mittels button gehe dann macht der alles wunderbar....es öffnet sich eine auswahlbox in der ich meine datei auswählen kann...dann ok drücken und die datei steht mit ihrem quellpfad in meiner liste...drück ich jetzt nochmal den button datei laden, so wird dieses JList Fenster wieder gelöscht, so wie ers machen soll. Der Hacken ist jetzt aber, wenn ich einmal über den button lade und danach über den menü eintrag "datei laden" gehe dann tut er dies nicht...es hat den anschein als würden sich das alte fenster und das neue überlappen...und das soll nicht sein.
  5. Hab ich gemacht, aber das ändert nix am Programm...hab immernoch das Problem . Wie kann ich dieses JFrame jetzt so handhaben das es von jeder anderen Klassen benutzt werden kann.....und vorallem das nur genau das benutzt wird ?
  6. public class Hauptprog{ /** * @param args */ public static void main(String[] args) { Menufenster Fenster = new Menufenster(); <-- Objekt Erzeugung Fenster.pack(); Fenster.setSize(1000,700); Fenster.setVisible(true); } } import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Menufenster extends JFrame { /** * */ private static final long serialVersionUID = -5662524236639740802L; private JMenuBar Menubar; private JMenu menu1,menu2,menu3,menu4; private JMenuItem item_load,item_save,item_exit,item_edit; /** * @param args */ public Menufenster(){ super("mein prog"); addWindowListener(new WindowClosingAdapter(true)); menubar(); } public void menubar(){ ActionListener listener = new ActionAdapter(this); Menubar = new JMenuBar(); menu1 = new JMenu("Datei"); menu2 = new JMenu("Bearbeiten"); menu3 = new JMenu("Ansicht"); menu4 = new JMenu("Hilfe"); item_load = new JMenuItem("Datei laden..." ,'l'); setCtrlAccelerator(item_load, 'L'); item_save = new JMenuItem("Datei speichern...", 's'); setCtrlAccelerator(item_save, 'S'); item_exit = new JMenuItem("Beenden", 'B'); setCtrlAccelerator(item_exit, 'B'); item_edit = new JMenuItem("Audiodatei",'A'); setCtrlAccelerator(item_edit, 'A'); menu1.setMnemonic('D'); menu2.setMnemonic('B'); menu3.setMnemonic('A'); menu4.setMnemonic('H'); menu1.add(item_load); menu1.add(item_save); menu1.addSeparator(); menu1.add(item_exit); Menubar.add(menu1); menu2.add(item_edit); Menubar.add(menu2); Menubar.add(menu3); Menubar.add(menu4); Menubar.setBorder(BorderFactory.createEtchedBorder()); getContentPane().add(Menubar, BorderLayout.NORTH); item_load.addActionListener(listener); item_exit.addActionListener(listener); item_save.addActionListener(listener); item_edit.addActionListener(listener); } hier mal der komplette Quelltext zur ersten Klasse..das Objekt Fenster was im Hauptprog erstellt wird, wird ja meines erachtens ja von JFrame abgleitet.Im Detail passiert dies in der Klasse Menufenster... Das funktioniert ja auch alles soweit.Die Frage ist halt nur ob das so ok ist, wenn ich global auf dieses erzeugte JFrame zugreifen will ? Bzw. was müsste ich vielleicht anders machen ?
  7. Hallo, ich arbeite an einem Programm zur Datenmanipulation, es sollen Dateien geladen werden über eine Auswahlbox, verändert und wieder gespeichert werden. Mein Problem sind nun die JFrames bzw. das JFrame. Damit das Programm übersichtlich bleibt ist es in mehrere Klassen geteilt. Mein Hauptprogramm erzeugt also ein Fenster und ruft die erste Klasse auf.In dieser Klasse wird eine JMenuBar erzeugt mit Items, desweiteren werden dort die Konstruktoren einiger anderen Klassen aufgerufen die das aktuelle JFrame erhalten, da diese Klassen auch mit dem JFrame arbeiten. Mein Problem ist nun, das das ganze Programm scheinbar nicht mit nur einem Frame arbeitet, sondern versucht auf ein 2 bzw. 3 zuzugreifen. ------------------------ import javax.swing.*; public class Hauptprog{ /** * @param args */ public static final Menufenster Fenster = new Menufenster(); public static void main(String[] args) { Fenster.pack(); Fenster.setSize(1000,700); Fenster.setVisible(true); } } ----------------- public Menufenster(){ super("mein prog"); addWindowListener(new WindowClosingAdapter(true)); menubar(); eigenschaften = new Ausgabe(this); erstellen = new Button(this); edit = new Bearbeiten(this); erstellen.Buttonlayout(); } ------- Wie bekomm ich es hin, das ich ein globales Hauptframe habe, auf das ich von jeder beliebigen Klasse aus zugreifen kann ?

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...