modal/center
-
wie bringe ich meinem dialog bei das er modal ist und immer in der mitte des monitors erscheint?
-
Modal: Einfach den Konstruktor entsprechend aufrufen. (Für Swing siehe auch http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/JDialog.html)
Zentriert: Über Toolkit (http://java.sun.com/j2se/1.5.0/docs/api/java/awt/Toolkit.html) kannst du die Bildschirmgröße auslesen und damit die Position deines Fensters ausrechnen und mittels setBounds() setzen.
-
leider habe ich keinen dialog sondern ein JFrame
und muss ich wenn ich von toolkit erbe, was ne abstrcte klasse zu sein scheint wirklich die "implementieren", weil das trotzt der untertützung von eclipse einfach mal scheiße aussieht mit den x funktionsrümpfen
-
steff3 schrieb:
leider habe ich keinen dialog sondern ein JFrame
Dann kannst du den nicht auf modal setzen. JFrame und JDialog sind sich aber recht ähnlich. Normalerweise brauchst du die Vererbung nur "umzubenennen" und alles funktioniert wie gehabt. Falls du von JFrame geerbt hast, versteht sich.
und muss ich wenn ich von toolkit erbe, was ne abstrcte klasse zu sein scheint wirklich die "implementieren", weil das trotzt der untertützung von eclipse einfach mal scheiße aussieht mit den x funktionsrümpfen
Nein. Du rufst Toolkit.getDefaultToolkit() auf, um eine Instanz davon zu erhalten mit der du dann arbeiten kannst.
-
Hallo,
leider habe ich keinen dialog sondern ein JFrame
dann wirst du wohl auf nen JDialog umsteigen müssen.
und muss ich wenn ich von toolkit erbe,
Von Toolkit ableiten? Wieso das denn? Es reicht, wenn du folgendes in deinen Ctor reinpackst:
Dimension ScreenSize = Toolkit.getDefaultToolkit().getScreenSize(); setBounds(ScreenSize.width/3, ScreenSize.height/3, 300, 180);
EDIT: Too slow...
Die Faktoren, Breite u. Höhe solltest du allerdings anpassen
Mfg
GPC
-
ihr habt mir schonmal geholfen
aber ich hab keine idee wie ich den dialog starten sollDialog(Frame owner, String title, boolean modal)
wie soll ich den owner dareinbekommenß
das ist doch das objekt meiner "hauptklasse" oder?
-
Der Owner ist im Allgemeinen der Frame, von dem aus der Dialog aufgerufen wurde. Wenn es keinen gibt (du also den Dialog zum Beispiel direkt aus main() heraus anzeigst), kannst du auch "null" angeben.
-
Dasd schrieb:
Der Owner ist im Allgemeinen der Frame, von dem aus der Dialog aufgerufen wurde. Wenn es keinen gibt (du also den Dialog zum Beispiel direkt aus main() heraus anzeigst), kannst du auch "null" angeben.
das war mir sowit schon klar, aber..
public class Gui extends JFrame { public static void main(String[] args) { new Gui();}
hab mal alles gespart
public class MyMenu extends JMenuBar { ...
da ist jetzt ein menü drin welches in der class Gui aufgerufen wird und dort ist wiederum
public void actionPerformed(ActionEvent ev) { new About_Dlg(null,"About",true); }
das drin
und jetzt würde ich gerne wissen wie ich dort sagen soll wie mein main frame heißt
-
In deinem Fall ist es wohl die Instanz von GUI, die in der main() erzeugst. Eventuell empfiehlt sich ein Singleton Pattern einzusetzen. Damit kannst du dann immer auf deine GUI-Instanz zugreifen.