Zustand eines GUI speichern

beens0n

Mitglied
Hallo,

ich baue zur Zeit einen Stundenplan, dort verschiebe ich JPanels per Drag and Drop und beschrifte sie (JTextField). Ist es möglich den Zustand, des GUI's zu speichern, also die Positionen, an denen sich die JPanels befinden?
Habe zwar schon von db4o gelesen, aber erhoffe mir, dass es eine einfachere Methode gibt, z.B. den JFrame mit seinen Objekten und deren Positionen in eine Textdatei o.ä. zu schreiben.
 

Swoop

Gesperrter Benutzer
Hey,

du kannst dir doch die x und y werte geben lassen? Diese Kannst du dann mit einem eindeutigen Namen etc in eine Textdatei schreiben?

Grüße Swoop
 

maestr0

Bekanntes Mitglied
du kannst dir doch die x und y werte geben lassen? Diese Kannst du dann mit einem eindeutigen Namen etc in eine Textdatei schreiben?

so hab ich es beim Entwickeln eines Plugins gemacht.
Ich habe Werte in einer XML Datei gespeichert,welche beim Start wieder ausgelesen werden.
Ob das auch bei dir funktioniert weiß ich leider nicht.
Mein Zauberwort hieß damals "DialogSettings". Hier findest du ein Beispiel.
Wizard Demo : WizardSWT JFace EclipseJava
 

beens0n

Mitglied
Danke, werde ich mir mal anschauen.
Ist es evtl auch möglich, dass ich einfach die Komponenten, die ich schon angeordnet habe (auf einem JPanel) mit getComponents erfrage und die dann in eine Datei speichere, aus der ich die Infos abrufe?
 

maestr0

Bekanntes Mitglied
Tut mir leid,aber die Frage kann ich weder mit Ja noch mit Nein beantworten,weil ich ehrlich gesagt nicht weiß ob das funktioniert.
Kannst es aber einfach mal versuchen,wie gesagt ich habe nur Items aus einer Combo gespeichert und diese beim Start wieder geaddet.
Möglich wäre es,dass dein Versuch auch geht,da habe ich aber leider zu wenig Erfahrung.Hoffe es meldet sich noch jemand,der darüber mehr weiß. :)
 

Paddelpirat

Bekanntes Mitglied
Da ist das Stichwort Serialisierung bzw. Serializable. Das funktioniert zwar sowei ich weiß in der Theorie, ist aber erstens nicht sehr schön und es gibt laut JavaDoc keine Garantie, dass deine gespeicherten Komponenten noch in der nächsten Java-Version richtig ausgelesen werden.
 

bERt0r

Top Contributor
Für einen Stundenplan würd ich mir erstmal eine Klasse "Eintrag" erstellen, in Beginn und End-Datum sowie die jeweilige Nachricht steht.
Zur Anzeige würde ich mir dann eine Panel-Klasse machen, die ich mit so einem Eintrag-Objekt instanziere.
Änderst du nun dein Panel und möchtest es speichern, sollte dein Panel die änderung an das Eintrag-Objekt weitergeben. Speichern brauchst du dann nur das Eintra-Objekt.

Um es anders auszudrücken, benutze das MVC Pattern und serialisiere das Model.
 

GUI-Programmer

Top Contributor
... Genau. Denn dann kannst du einfach beim Start deines Programmes alle nötigen Werte vom Model laden, und so die GUI dementsprechend aufbauen. Neben dem "standartmäßigen Serialisierverfahren" kann ich dir nur XStream empfehlen, ist imo recht leicht zu programmieren.
 

Gulipono

Mitglied
Ich habe ein ähnliches Problem und dieses auch schon in nem eigenem Thema angesprochen,
hier passt es aber besser hin.

In meiner Anwendung werden Button mit Funktion auf einer GUI plaziert.
Diese neuen Button sollen bei einem Neustart des Programms wieder da sein, also geladen werden.

Hatte versucht das ganze komplett als Objekt zu serialisiern, war damit aber scheinbar auf dem Holzweg.
Ein klick auf einen Hinzufügen Button löst folgenden Dialog aus, der dann den neuen Button erzeugt.

Java:
 public void buttondialog()
  {
    final JTextField buttontext = new JTextField("",20);
    final JButton okTextButton = new JButton("ok");
    final JDialog buttonDialog = new JDialog();    
    JPanel dialogPane = new JPanel();
    
    okTextButton.addActionListener(new ActionListener()
    {
      public void  actionPerformed(ActionEvent e)
      {
        
        buttonToAdd  =   buttontext.getText();
        final JButton dummybutton  =   new JButton(buttonToAdd);
        dummybutton.addActionListener(new ActionListener()
        {
          public void  actionPerformed(ActionEvent e)
          {
            satzWerk.setText(dummybutton.getText());
            satzWerkZwischenablage();
          }           
        }                         );
        panel1.add(dummybutton) ;
        hintergrundPane.repaint();
        tabpane.repaint();
        buttonDialog.setVisible(false);        
      }      
    }
    );    
    buttonDialog.setTitle("Button hinzufügen");
    buttonDialog.setSize(200,200);
    buttonDialog.setModal(true);
    buttonDialog.add(dialogPane);     
    dialogPane.add(buttontext);
    dialogPane.add(okTextButton);    
    buttonDialog.setVisible(true);    
  }

Ist das Produkt überhaupt speicherbar ?
Oder muss ich Grundsätzlich anders vorgehen, damit eine Speicherung später möglich ist ?
Ich weiß echt nicht mehr weiter.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
F JavaFX Zustand der CheckMenuItems behalten nach Programmneustart AWT, Swing, JavaFX & SWT 7
kilopack15 JPanel im laufenden Zustand einfärben AWT, Swing, JavaFX & SWT 2
V RadioButton aktivieren/deaktivieren; Zustand abfragen und wechseln AWT, Swing, JavaFX & SWT 2
E Zustand der JCheckBox abfragen AWT, Swing, JavaFX & SWT 1
T Swing JToggleButton Zustand AWT, Swing, JavaFX & SWT 2
V sellectAll() - Zustand abfragen AWT, Swing, JavaFX & SWT 8
M effizient mehrere BufferedImage in eines schreiben AWT, Swing, JavaFX & SWT 6
O Swing Icon verschwindet beim Verschieben eines JLabels AWT, Swing, JavaFX & SWT 8
jojoge wie kann ich in eine Benennung eines JButtons eine Variable einbauen? AWT, Swing, JavaFX & SWT 6
L paintComponent in Panel eines Borderlayouts hinzufügen AWT, Swing, JavaFX & SWT 3
I Einbindung eines jpg/png/icons in eine GUI AWT, Swing, JavaFX & SWT 1
Splayfer Umrandung eines AttributedStrings AWT, Swing, JavaFX & SWT 2
Guybrush Threepwood Einfachste Möglichkeit zum Abspielen eines Videos in Swing AWT, Swing, JavaFX & SWT 4
Jose05 NullPointerException bei Beschreiben eines Labels aus einem Array AWT, Swing, JavaFX & SWT 12
Jose05 zugreifen auf ein Objekt eines GridPanes AWT, Swing, JavaFX & SWT 0
melaniemueller Verschiebung eines Fensters über Button AWT, Swing, JavaFX & SWT 27
news2swen automatisches erstellen eines Languagefiles AWT, Swing, JavaFX & SWT 1
B Stylen eines JTextPane funktioniert nicht AWT, Swing, JavaFX & SWT 1
MiMa Schliessen eines FXML Fensters? AWT, Swing, JavaFX & SWT 10
B JavaFX Farbe eines Quadrates in einer separaten Klasse ändern AWT, Swing, JavaFX & SWT 4
L AWT Ändern der Farbe eines BufferedImage mit Farbähnlichkeit AWT, Swing, JavaFX & SWT 5
B veränderte Größe eines Panels im Vorhinein wissen? AWT, Swing, JavaFX & SWT 1
L Komponenten eines Panels werden erst nach Klick darauf angezeigt AWT, Swing, JavaFX & SWT 13
L JavaFX Validierung eines Spinner AWT, Swing, JavaFX & SWT 1
M Builden eines lauffähigen JAR Files AWT, Swing, JavaFX & SWT 3
K Swing Text eines Lables in einer Methode ändern AWT, Swing, JavaFX & SWT 13
M JavaFX rotieren eines Kreises mit konstanter Geschwindigkeit AWT, Swing, JavaFX & SWT 1
K JavaFX Allgemeine Fragen zu dem Aufbau eines Programms hinsichtlich der Klassen AWT, Swing, JavaFX & SWT 1
M JavaFX Auf ein UI Elemement eines anderen Controllers zugreifen AWT, Swing, JavaFX & SWT 0
P Bewegung eines Balkens in eineum JPanel welches als Spielfeld fungiert AWT, Swing, JavaFX & SWT 2
Tronert JavaFX Linienstärke eines Separators ändern? AWT, Swing, JavaFX & SWT 3
N JavaFX Group: Gezieltes entfernen eines Objects (Rectangle) AWT, Swing, JavaFX & SWT 0
J Ziehen eines Buttons im JPanel AWT, Swing, JavaFX & SWT 2
J Drag and Drop eines Buttons AWT, Swing, JavaFX & SWT 0
M NullPointerException bei Übergabe eines RadioButtons AWT, Swing, JavaFX & SWT 11
DaCrazyJavaExpert Swing Extern den Text eines nicht fetsgelegten Buttons bekommen. AWT, Swing, JavaFX & SWT 12
J JavaFX Rectangle innerhalb eines Rectangle oder Panes positionieren? AWT, Swing, JavaFX & SWT 1
C JavaFX Inhalt eines SplitPane's durch Menü-Auswahl ändern? AWT, Swing, JavaFX & SWT 13
J linken Bildausschnitt eines BufferedImage abschneiden AWT, Swing, JavaFX & SWT 4
J bestimmten Bereich eines JPanels drucken AWT, Swing, JavaFX & SWT 2
D LookAndFeel Überschreiben eines UIDelegate AWT, Swing, JavaFX & SWT 0
T Java FX Probleme beim befüllen eines Tableviews AWT, Swing, JavaFX & SWT 5
C Zeichen eines 6 -Eckes AWT, Swing, JavaFX & SWT 1
U JavaFX Wechsel der Scene nach betätigen eines Button AWT, Swing, JavaFX & SWT 2
F Screenshot eines JPanel AWT, Swing, JavaFX & SWT 3
S JavaFX TreeItem: Icon am Ende eines Eintrags anhängen AWT, Swing, JavaFX & SWT 2
D TAB Taste innerhalb eines JSpinner AWT, Swing, JavaFX & SWT 2
R Update eines Labels bei Methodenaufruf einer anderen Klasse AWT, Swing, JavaFX & SWT 9
F Swing Spaltenbreite einer Column eines JTable auslesen AWT, Swing, JavaFX & SWT 5
D Swing Komponenten Anordnung eines Panels in Verbindung eines weiteren Panels AWT, Swing, JavaFX & SWT 9
F Swing Rotation eines Bildes mit beliebigen Koordinaten um den Mittelpunkt AWT, Swing, JavaFX & SWT 3
Cromewell JavaFX Nur bestimmten Teil eines Canvas rendern und anzeigen AWT, Swing, JavaFX & SWT 2
Z Swing Variable eines Objekt aus Hashmap in JList anzeigen AWT, Swing, JavaFX & SWT 1
D Frame beim starten eines anderen Frames schließen AWT, Swing, JavaFX & SWT 2
R Hilfe beim ändern des Hintergrundes eines JFrames AWT, Swing, JavaFX & SWT 9
T Durch klicken eines Buttons Klasse wechseln AWT, Swing, JavaFX & SWT 2
E Swing Copy und Paste eines einzelnen Knoten aus einem JTree AWT, Swing, JavaFX & SWT 1
J Swing Vertikales Zeichnen eines Strings mit Java2D AWT, Swing, JavaFX & SWT 1
7 JavaFX Problem beim Zeichnen eines Dreiecks in einem GUI AWT, Swing, JavaFX & SWT 6
V JavaFX Teile eines Images Transparent machen AWT, Swing, JavaFX & SWT 4
I JavaFX Langes drücken eines Buttons AWT, Swing, JavaFX & SWT 4
B Swing Wie Witdh und Height eines GuiElements bekommen AWT, Swing, JavaFX & SWT 5
L Swing Teile eines JPanel in eigene Klasse auslagern AWT, Swing, JavaFX & SWT 3
M Swing JPanel innerhalb eines Frames verschieben AWT, Swing, JavaFX & SWT 3
J JavaFX Zugriff auf FXML-Variablen eines anderen Controllers AWT, Swing, JavaFX & SWT 2
K Swing Inhalt eines JPanels lesen AWT, Swing, JavaFX & SWT 3
T Nur bestimmte Bereiche eines Fotos bearbeiten AWT, Swing, JavaFX & SWT 0
J Swing Erstellung eines User Interface AWT, Swing, JavaFX & SWT 2
S JavaFX Teil eines Bildes ausschneiden / als neues Bild nutzen AWT, Swing, JavaFX & SWT 8
R Swing Bewegung eines Graphics Objektes innerhalb eines JPanels funktioniert nicht richtig AWT, Swing, JavaFX & SWT 2
O Swing Aufbau eines JFrames AWT, Swing, JavaFX & SWT 2
A JavaFX Hilfe beim Design eines Quiz AWT, Swing, JavaFX & SWT 2
F Instanzierung einer inneren Klasse in Klasse eines anderen Packets AWT, Swing, JavaFX & SWT 3
A befüllen eines JTables mittels Methode AWT, Swing, JavaFX & SWT 10
javampir Swing Wanderung eines JFrames AWT, Swing, JavaFX & SWT 7
J Anfänger GUI Problem bei der Ausführung eines sehr einfachen Programms AWT, Swing, JavaFX & SWT 2
G Swing ComboBox: Auswahl eines Items der Liste durch Eingabe eines Buchstabens AWT, Swing, JavaFX & SWT 3
S Swing Nur den sichtbaren Bereich eines TextPane mit Inhalt darstellem AWT, Swing, JavaFX & SWT 0
I Erstellung eines kleinen Programmes AWT, Swing, JavaFX & SWT 8
H Position eines JLabel in einem JPanel AWT, Swing, JavaFX & SWT 2
J 2D-Grafik Windows Blue-Screen nach anzeigen eines Bildes in Java AWT, Swing, JavaFX & SWT 10
T Swing Einzelne Teile eines Textes färben? AWT, Swing, JavaFX & SWT 10
H Swing Probleme beim erstellen eines neuen Objektes durch einen Button AWT, Swing, JavaFX & SWT 10
HaukeG JavaFX JavaFX Resize und DragAndDrop eines Pane AWT, Swing, JavaFX & SWT 4
D 2D-Grafik Inhalt eines Graphics in anderes Graphics zeichnen.... AWT, Swing, JavaFX & SWT 3
J Denkfehler bei Aktualisierung eines GUI AWT, Swing, JavaFX & SWT 4
J Logikfehler im erstellen eines GUI AWT, Swing, JavaFX & SWT 3
F JTabbedPane mit Button zum Hinzufügen eines neuen Tabs AWT, Swing, JavaFX & SWT 6
B Event Handling Mausbewegung auch außerhalb eines JFrames registrieren AWT, Swing, JavaFX & SWT 2
U Swing Beim Bedienen eines Buttons JFrame schließen AWT, Swing, JavaFX & SWT 2
A Fehler bei erstellen eines JTextFields AWT, Swing, JavaFX & SWT 2
S Bestimmten Bereich eines Bildes im JFrame mit Scrollpane anzeigen AWT, Swing, JavaFX & SWT 0
C AWT die X koordinate eines Rectangles herrausfinden AWT, Swing, JavaFX & SWT 14
G 2D-Grafik Umrandung eines Winkels (drawArc(..)) AWT, Swing, JavaFX & SWT 4
V Ende eines Frames abwarten AWT, Swing, JavaFX & SWT 7
T hallo, habe ein Problem mit dem pro. eines Threads AWT, Swing, JavaFX & SWT 4
S Swing Auf Änderungen eines Models in der View einer JTable reagieren AWT, Swing, JavaFX & SWT 1
U Größe eines Button im Menü ändern AWT, Swing, JavaFX & SWT 1
B Größer-/Kleinerziehen eines JFrames/JPanels erkennen AWT, Swing, JavaFX & SWT 2
B 2D-Grafik Shade eines Images AWT, Swing, JavaFX & SWT 1

Ähnliche Java Themen


Oben