Hallo,
mein Programm verfügt über ein Hauptfenster und mehrere Unterfenster, und eines davon hat seinerseits Unterfenster. Ich will, daß das Hauptfenster (dessen übergeordnetes Fenster der Desktop ist) in der Mitte des Desktops erscheint, die Unterfenster aber in der Mitte ihrer übergeordneten Fenster.
Nun dachte ich, ich greife einfach den Befehl GetActiveWindow() zurück und sage z.B.
Code: Alles auswählen
bF=WindowID(GetActiveWindow()) ; beherbergendes Fenster
K(0)=OpenWindow(#PB_Any, 0, 0, Br, H, "Lerninhalte", #PB_Window_SystemMenu|
#PB_Window_WindowCentered, bF)Nun ist es natürlich kein Problem, anstelle von #PB_Window_WindowCentered einfach #PB_Window_ScreenCentered zu sagen. Was aber, wenn man eine Prozedur zur automatischen Erstellung von Fenstern mit ListViews geschrieben hat, die sowohl dann funktionieren soll, wenn es kein übergeordnetes Fenster gibt (also das Hauptfenster erstellt wird), als auch dann, wenn es sich um ein Unterfenster handelt?
Genauer gefragt: Wie kriegt man heraus, ob bereits ein aktives Fenster existiert, oder kein aktives Fenster existiert bzw. der Desktop das aktive Fenster ist?
Vielen Dank