Die Idee mit dem Imagegadget hatte ich auch schon mal. Funktioniert auch solange man keine anderen Gadgets verwendet.
Wenn das Image den Hintergrund des Fensters darstellt und ich noch andere Gadgets (davor) erstelle, sieht es zwar immer noch toll aus, aber leider kann ich die Gadgets im Vordergrund nicht mehr anklicken!
Für die Lösung wäre interessant, ob man eine "Reihenfolge" der Gadgets angeben kann, so daß das Image immer als letztes Events erhält und keine von z.B. einem Butten davor abfängt...
Bei der Methode mit dem Neu-Zeichnen tauchte folgendes Problem auf:
Beim Event #pb_event_Activate_window lasse ich den Hintergrund neu zeichnen. Danach sind aber die Gadgets übermalt! Der Versuch mit Hidegadget(x,0) alle aktuell zu sehenden Gadgets nochmal zu refreshen (bei .NET gibt's da die Befehle refresh() oder invalidate() - eigentlich suche ich eine Entsprechnung dafür...) funktioniert nur, wenn ich sie vorher auch verstecke.
DADURCH wiederum fühlen sich auch andere Gadgets (die versteckt sind und es auch bleiben sollen) angesprochen und ich habe da einen "Schatten" aller Gadgets, die theoretisch da sind, aber die nicht gezeigt werden sollen, in der Window Hintergrundfarbe auf dem selbstgezeichneten Hintergrund (ist Farbverlauf; egal wie die Window Hintergrundfarbe ist - einen einfarbigen Löschbereich sieht man!).
Ich glaube ich habe jetzt alle Reihenfolgen mit Event -> Gadgets verstecken -> Schirm neu malen -> sichtbare wieder anzeigen durch, aber keines funktioniert (in allen Fällen...)....
Die aktuelle Reihenfolge funktionert perfekt, wenn man das Fenster kurzzeitig wechselt, aber direkt nach dem Verstecken sind da immer diese Löschbereiche, mit denen er versteckte Gadgets übermalt, und das OBWOHL der Hide-Befehl VOR dem Malen des Hintergrundes steht!