AlexLg89 Geschrieben 18. April 2008 Geschrieben 18. April 2008 Hi. Ich habe ein Programm das beim Schliessen die Position der Scrollbars speichert. Beim erneuten Öffnen sollen die Scrollbars wieder da sein, wo sie vor dem Schlißen waren. Die horizontale Scrollbar klappt auch soweit, nur die vertikale möchte irgendwie nicht so ganz. Sie bleibt einfach ganz oben, während die horzontale wieder dahin springt, wo sie vor dem Schlißen war. Zum Ändern benutze ich folgenden Code: this.scrollPane.getViewport().setViewPosition(new java.awt.Point(this.scrollPosX,this.scrollPosY)); scrollPosX und scrollPosY sind vom Typ int. Kann mir jemand helfen? Was mache ich falsch? Danke euch schonmal im Vorraus!
Dragon8 Geschrieben 18. April 2008 Geschrieben 18. April 2008 Also soweit ich das sehe, und gerade ausgetestet habe, machst nichts falsch. Die Anweisung ist schon richtig so. Bist du dir denn aber auch sicher, dass dein scrollPosY den richtigen Wert hat, sobald er die ScrollPane wieder an ihren alten Platz scrollt? Sieht für mich ganz so aus, als wenn die am Anfang entweder nicht richtig gesetzt wird oder zwischendurch nen anderen Wert bekommt.
AlexLg89 Geschrieben 18. April 2008 Autor Geschrieben 18. April 2008 Also bei jedem Schließen speicher ich es in einer Datei. Bei jedem Start werden die Daten ausgelesen, wenn sie vorhanden sind. In der Config steht gerade: scrollX#499 scrollY#104 Bevor ich dann meinen Befehl zum Setzen aufrufe habe ich mal einen Testdruck gemacht, der beide Variabeln ausgibt. Und scheinbar haben sie die richtigen Werte.
Cobinja Geschrieben 20. April 2008 Geschrieben 20. April 2008 Wird vielleicht nach dem Setzen der Position eine automatische Selektierung oder etwas in der Art durchgeführt, so daß der Viewport wieder nach ganz oben gesetzt wird?
AlexLg89 Geschrieben 21. April 2008 Autor Geschrieben 21. April 2008 Hab den Fehler gefunden. Hab nach dem Setzen ein validate() aufgerufen. Jetzt funktioniert es jedenfalls
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden