Popup-Formular - (De)Activate-Ereignis

16/03/2009 - 13:17 von Georg Matejka | Report spam
Hallo,
Frage:
warum findet in einem (bereits geöffneten) Popup-Formular bei
Fokus-Verlust(Erhalt) das (De)Activate-Ereignis nicht statt?
bzw.
Welches Ereignis kann ich stattdessen verwenden?

Hintergrund:
Im Hintergrund ein Endlos-Formular mit der 'Übersicht', davor zwei
Popup-Formulare mit unterschiedlichen Detailansichten zum im Endlos-Formular
aktuellen Datensatz.
Wenn der Fokus nun zwischen den Popup-Formularen wechselt und der Datensatz
im zuvor aktuellen Popup .Dirty ist, möchte ich ihn autom. speichern. beim
Benutzer nachfragen, usw. Nur - in welchem Ereignis?

Mögliche Lösungen:
- Ein Standard-Formular per Api so umbiegen, dass es für den Benutzer wie
ein Popup, für Access jedoch wie ein Standard-Formular reagiert.
- Keine Popups und stattdessen Standard-Formulare _nebeneinander_ anordnen.
D.h. das jetzige Konzept verwerfen.
- Mit einer globalen Variable und dem ersten Mouse- oder KeyDown im
'anderen' Formular arbeiten (kommt mir bis jetzt am machbarsten vor)

Nja, am Besten wàre immer noch ein (Popup-aber-trotzdem-)Activate-Ereignis,
vielleicht hat jemand eine Idee.

Danke
Georg
 

Lesen sie die antworten

#1 Karl Donaubauer
16/03/2009 - 16:22 | Warnen spam
Hallo, Georg!

Georg Matejka wrote:
Frage:
warum findet in einem (bereits geöffneten) Popup-Formular bei
Fokus-Verlust(Erhalt) das (De)Activate-Ereignis nicht statt?



Da hat sich seit dem letzten Jahrtausend wohl nichts geàndert:
http://groups.google.com/group/micr...dd5f45d493
Der Satz ist auch bei A03 noch in der OH.

bzw.
Welches Ereignis kann ich stattdessen verwenden?

Hintergrund:
Im Hintergrund ein Endlos-Formular mit der 'Übersicht', davor zwei
Popup-Formulare mit unterschiedlichen Detailansichten zum im
Endlos-Formular aktuellen Datensatz.
Wenn der Fokus nun zwischen den Popup-Formularen wechselt und der
Datensatz im zuvor aktuellen Popup .Dirty ist, möchte ich ihn autom.
speichern. beim Benutzer nachfragen, usw. Nur - in welchem Ereignis?

Mögliche Lösungen:
- Ein Standard-Formular per Api so umbiegen, dass es für den Benutzer
wie ein Popup, für Access jedoch wie ein Standard-Formular reagiert.
- Keine Popups und stattdessen Standard-Formulare _nebeneinander_
anordnen. D.h. das jetzige Konzept verwerfen.
- Mit einer globalen Variable und dem ersten Mouse- oder KeyDown im
'anderen' Formular arbeiten (kommt mir bis jetzt am machbarsten vor)

Nja, am Besten wàre immer noch ein
(Popup-aber-trotzdem-)Activate-Ereignis, vielleicht hat jemand eine
Idee.



Ich verwende eher selten Popups und nie solche doppelten Anzeigen.
Daher habe ich keinen Tipp aus der Praxis. Wie erfolgt denn ein
eventuelles Speichern bei dir in dieser Situation?

Wenn deine geheime Access-Version >=AX ist, solltest du zumindest
das Ereignis "Bei Geàndert" (OnDirty) verwenden können, um die
Variable oder dergl. vom geànderten Formular aus zu steuern.

Das Problem bleibt das Ereignis im anderen Formular. Vielleicht
wie o.a. OnDirty das andere Formular oder seine Steuerelemente
sperren und/oder ein Textfeld ein/drüberblenden.

HTH
Karl
********* Ich beantworte keine Access-Fragen per Email. *********
Access-FAQ: http://www.donkarl.com
die 1. .NET-Entwickler-Konferenz für Accessler: www.donkarl.com?nek

Ähnliche fragen