Zum Inhalt springen

JFrame oder JWindow in der Mitte des Screens platzieren


Empfohlene Beiträge

Geschrieben

Gibt es eine Möglichkeit ein JWindow oder einen JFrame in die Mitte des Bildschirms zu bringen? Ich kenne nur setLocation(x,y) aber damit ist es ein wenig umständlich, vor allem wenn das Ganze unabhängig von einer Auflösung sein soll.

Vielen Dank im Vorraus,

BMAS

Geschrieben

Kennst du http://groups.google.de schon?

Liefert bei JFrame und mittig als ersten Treffer das hier. ;)

setLocation(

(Toolkit.getDefaultToolkit().getScreenSize().width-getSize().width) / 2,

(Toolkit.getDefaultToolkit().getScreenSize().height-getSize().heigth) / 2

);

Gruß Jaraz

Geschrieben

:) Okay, danke!

Könnte mir vielleicht auch einer sagen, warum ich hier:

		if (e.getSource() == bSuche) {

JInternalFrame jif =
new JInternalFrame("Suche", false, false, false, false);
jif.setDoubleBuffered(true);
jif.getContentPane().add(searchPanel);
jif.setVisible(true);
jif.pack();
jif.setFrameIcon(new ImageIcon("c:/images/Find16.gif"));
try {
jif.setMaximum(true);
} catch (PropertyVetoException pvex) {
pvex.printStackTrace();
}
desktop.add(jif);
desktop.revalidate();
}
[/PHP]

Folgende Exception bekomme (StackTrace!)? bevor ich den try catch Block mit jif.setMaximum(true) eingefügt habe, ging das noch!

[PHP]java.lang.NullPointerException
at javax.swing.DefaultDesktopManager.maximizeFrame(DefaultDesktopManager.java:90)
at javax.swing.plaf.basic.BasicInternalFrameUI.maximizeFrame(BasicInternalFrameUI.java:629)
at javax.swing.plaf.basic.BasicInternalFrameUI$InternalFramePropertyChangeListener.propertyChange(BasicInternalFrameUI.java:437)
at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(SwingPropertyChangeSupport.java:264)
at javax.swing.event.SwingPropertyChangeSupport.firePropertyChange(SwingPropertyChangeSupport.java:232)
at javax.swing.JComponent.firePropertyChange(JComponent.java:3814)
at javax.swing.JInternalFrame.setMaximum(JInternalFrame.java:964)
at LDD.HauptFrame.actionPerformed(HauptFrame.java:166)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1764)
at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1817)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:419)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:257)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:245)
at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:228)
at java.awt.Component.processMouseEvent(Component.java:5093)
at java.awt.Component.processEvent(Component.java:4890)
at java.awt.Container.processEvent(Container.java:1566)
at java.awt.Component.dispatchEventImpl(Component.java:3598)
at java.awt.Container.dispatchEventImpl(Container.java:1623)
at java.awt.Component.dispatchEvent(Component.java:3439)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:3450)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3165)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3095)
at java.awt.Container.dispatchEventImpl(Container.java:1609)
at java.awt.Window.dispatchEventImpl(Window.java:1585)
at java.awt.Component.dispatchEvent(Component.java:3439)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:450)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:197)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:99)

Geschrieben

Also wenn ich die Grösse mit des JInternalFrames mit setSize oder pack() setze, geht es, aber ich hätte den gerne maximiert. :( (also setMaximum)

Geschrieben

Hallo,

und warum initialisierst du ihn dann als nicht maximizable? :confused:

Also, entweder den Konstruktor ändern oder mit setMaximizable(boolean B) die Voreinstellung ändern.

Gruß Jaraz

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