Zum Inhalt springen

JFrame in die Mitte des Bildschirms


Empfohlene Beiträge

Geschrieben

Hallo da draußen,

ich habe einen Frame, den ich in der Mitte des Bildschirms anzeigen möchte.

Das sollte ja an sich gehen, wenn man im Konstruktor quasi den Frame bildet und dann bei setLocation vorher

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

anwendet und dann in den Klammern von setLocation() die Mitte errechnet.

Ich hab das bei GalileoComputing gelesen, aber irgendwie will das bei mir nicht klappen. Gut, die bilden anfangs ein Objekt von JFrame und schreiben das noch vor die ganzen Methoden. Aber daran liegt das doch nicht, oder?

Der Compiler sagt mir bei meiner Berechnung 'not a statement'

Ich hoffe, es kann mir jemand helfen und es wird klar, was ich meine....:cool:

Dankeschön,

Gruß Silvie

Geschrieben
Original geschrieben von Silvie

Ich hoffe, es kann mir jemand helfen und es wird klar, was ich meine....:cool:

Nein!

not a statement = Syntaxfehler

Ohne Codeausschnitt kann dir da keiner helfen.

Gruß Jaraz

Geschrieben

Moin,

ist nicht Silvies Lösung, geht aber auch. Funktioniert zudem auch für Dialoge. Eventuell leichte Ungenauigkeiten aufgrund des blauen Balkens oben an den Fenstern. Aber dann kann man die Methode ja noch angleichen, indem man die entsprechende Komponente übergibt.


public void centerWindow(Window window) {

    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

    Dimension frameSize = window.getSize();

    if (frameSize.height > screenSize.height) {

      frameSize.height = screenSize.height;

    }

    if (frameSize.width > screenSize.width) {

      frameSize.width = screenSize.width;

    }

    window.setLocation((screenSize.width - frameSize.width) / 2,

                       (screenSize.height - frameSize.height) / 2);

}

Gruß, Peter

Geschrieben

Hi,

genau die Lösung hatte ich auch, hatte bloß in dem Ausdruck

window.setLocation((screenSize.width - frameSize.width) / 2,

(screenSize.height - frameSize.height) / 2);

vorne die Klammer vergessen. D.h., ich hatte es aus GalileoComputing kopiert und DIE hatten die Klammer vergessen. :D

Aber das hab ich dann leider erst gemerkt, als ich den Beitrag schon gepostet hatte...:floet:

Gruß Silvie

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 erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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...