Hi leutz.
Ich habe ein JDesktopPane und ich brauche dessen höhe und breite.
Ich kann das so einwandfrei holen.
leider ist x_desktop und y_desktop ausserhalb dieser Klammern immer 0.
Ich weiss das diese Werte erst zur Laufzeit geholt werden, aber wie bringe ich es hin das ich dann ne Methode erzeugen kann.. und diese in ner anderen Klasse aufrufen kann z.B.
.. und ich jetzt die eigentlichen werte drin habe
jetzt sind die werte da immer 0
Wie das intern abläuft weiss ich nicht.
Ich habe halt diesen Code desktop.addComponent.... mitten in meinem Programm.
und bei dem System.out.println bekomme ich den richtigen wert. In meinem Fall
x : 1092
y : 707
aber wenn ich dann die Methide getWidthDesktop aufrufe ist der wert immer 0
allerdings wenn ich DANACH ein System out.println("nach dem addComponent : " + y_desktop) mache bekomme ich diesen wert DAVOR..
also wird es warscheinlich erst zur laufzeit gemacht.
nach dem addComponent : 0
x : 1092
y : 707
weiss jemand wie ich das machen könnte.
mein Problem ist das ich komponenten in das JDesktopPane adden will und diese in den Ecken sitzen sollen.
also z.B. ein panel das 100*100 hat soll mit setBounds(getWidthDesktop-100, getHeightDesktop-100,100,100)
genau ins eck gesetzt werden.
Ich habe ein JDesktopPane und ich brauche dessen höhe und breite.
Ich kann das so einwandfrei holen.
Code:
// setzte width und height desktop
desktop.addComponentListener(new ComponentAdapter() {
public void componentResized(ComponentEvent e) {
x_desktop = desktop.getWidth() ;
System.out.println("x : " + x_desktop);
y_desktop = desktop.getHeight() ;
System.out.println("y : " + y_desktop);
}
});
leider ist x_desktop und y_desktop ausserhalb dieser Klammern immer 0.
Ich weiss das diese Werte erst zur Laufzeit geholt werden, aber wie bringe ich es hin das ich dann ne Methode erzeugen kann.. und diese in ner anderen Klasse aufrufen kann z.B.
Code:
public static int getWidthDesktop(){
System.out.println(x_desktop);
return x_desktop;
}
public static int getHeightDesktop(){
System.out.println("y_desktop" + y_desktop);
return y_desktop;
}
.. und ich jetzt die eigentlichen werte drin habe
jetzt sind die werte da immer 0
Wie das intern abläuft weiss ich nicht.
Ich habe halt diesen Code desktop.addComponent.... mitten in meinem Programm.
und bei dem System.out.println bekomme ich den richtigen wert. In meinem Fall
x : 1092
y : 707
aber wenn ich dann die Methide getWidthDesktop aufrufe ist der wert immer 0
allerdings wenn ich DANACH ein System out.println("nach dem addComponent : " + y_desktop) mache bekomme ich diesen wert DAVOR..
also wird es warscheinlich erst zur laufzeit gemacht.
nach dem addComponent : 0
x : 1092
y : 707
weiss jemand wie ich das machen könnte.
mein Problem ist das ich komponenten in das JDesktopPane adden will und diese in den Ecken sitzen sollen.
also z.B. ein panel das 100*100 hat soll mit setBounds(getWidthDesktop-100, getHeightDesktop-100,100,100)
genau ins eck gesetzt werden.