Wie sich überlappende Controls in den Vordergrund zwingen?

27. April 2007 17:56

Hallo,

vielleicht kann mir hier jemand helfen:

Ich möchte gerne auf Knopfdruck auf einem Form ein kleines "Fensterchen" einblenden und ausblenden, ohne ein anderes Form zu nutzen. D.h. es ist einfach ein unsichtbares Control (ein Frame mit Buttons darauf), welches sichtbar gemacht wird.

Allerdings liegt es nicht ganz in einem freien Bereich, sondern überlagert andere Controls auf dem Form. Es soll quasi wie so eine Art "schwebende Toolbar" über dem Form liegen. Dazu habe ich "BackTransparent" auf "Nein" gesetzt, damit die anderen Controls nicht "durchscheinen", wenn es sichtbar wird. Es rückt also somit in den Vordergrund. War auch ganz schön so, nur leider ist jedesmal, wenn ich dann einen Button auf dem Frame gedrückt habe, der Hintergrund wieder sichtbar geworden, warum auch immer... Ich habe auch "Send to Back" u.s.w. versucht, ändert aber gar nichts.

Dann habe ich aus Not einfach jedesmal, wenn ein Button gedrückt wird, den ganzen Frame wieder sichtbar gemacht (VISIBLE = TRUE), obwohl er ja bereits sichtbar war. Aber so habe ich den ganzen Frame immer im Vordergrund, so lange ich ihn nicht wieder per Knopfdruck unsichtbar mache.

So weit so gut, aber nun das eigentliche Problem:

In meiner lokalen Entwicklungsdatenbank funktioniert das wunderbar, aber wenn ich das Form in unsere Serverdatenbank einspiele, also da wo es die Benutzer dann auch tatsächlich nutzen sollen, funktioniert es nicht mehr! Wenn ich jetzt den Frame einblende, sind sogar sofort die darunter liegenden Controls noch sichtbar, also "scheinen" durch, obwohl ja "BackTransparent" auf "Nein" ist, u.s.w.

Das Form weist also zwei verschiedene Verhaltensweisen auf, je nachdem ob es in meiner lokalen Datenbank oder auf dem Server ausgeführt wird. Einmal ist der Frame immer schön im Vordergrund und einmal scheinen immer alle dahinter liegenden Controls durch, ich sehe also alles "gleichzeitig", was ich ja gerade nicht möchte.

Irgendeine Idee??

Vielen Dank schon mal für jeden Tipp!