ich möchte gerne ein Formular meiner Datenbank nach dem anklicken zentral im Bildschirm und in einer Bestimmten Größe öffnen. Dabei sollte die zentrale Bildschirmposition unabhängig von der am Rechner eingestellten Auflösung erfolgen.
Ich habe heute schon etwas "herumprobiert" komme aber zu keinem Ergebnis. Mein Proggi funktioniert leider nur in der Basic-IDE. Ich schätze, dass ich das Falsche Objekt auswähle....
Zugegeben, mit der Doku zur objektorientierten Programmierung im Programmierhandbuch von Sun habe ich noch nicht so richig den Durchblick....

Was ich in der Basic-IDE gemacht bisher gemacht habe sieht wie folgt aus:
Code: Alles auswählen
Sub setWindowOnStart
Dim oFrame as Object, oApWin as object, oApWinGr as object
oFrame = StarDesktop.getCurrentFrame()
oApWin = oFrame.getComponentWindow()
oApWinGr = oApWin.getPosSize()
MsgBox ("Fensterposition (x): " & oApWinGr.X & "px" & Chr$(13) & _
"Fensterposition (y): " & oApWinGr.Y & "px"& Chr$(13) & _
"Fensterbreite: " & oApWinGr.Width & "px"& Chr$(13) & _
"Fensterhöhe: " & oApWinGr.Height & "px")
MsgBox ("Die Größe des Fensters wird jetzt auf 400x400 Pixel gesetzt.")
oApWin.setPosSize(oApWinGr.X, oApWinGr.Y, 400, 400, 12)
MsgBox ("Es werden nun alle Werte zurückgesetzt")
oApWin.setPosSize(oApWinGr.X, oApWinGr.Y, oApWinGr.Width, oApWinGr.Height, 12)
End Sub
Ich bekomme nach dem Ausführen die Meldung "BASIC-Laufzeitfehler. Objektvariable nicht belegt."
Der Fehler liegt in der Zeile mit der Anweisung
Code: Alles auswählen
oApWin = oFrame.getComponentWindow()
Greets,
Billy