Das Aktivierung deaktivieren wenn sichtbare Option

Ein Steuerelement verfügt über zwei Grundzustände: aktiv oder inaktiv.Herkömmlicherweise sind diese Bedingungen durch definiert, ob es sich bei dem Steuerelement um ein Fenster hat.Ein aktives Steuerelement verfügt ein Fenster. tat ein inaktives Steuerelement nicht.Mit der Einführung der fensterlosen Aktivierung, ist diese Unterscheidung nicht mehr universell, sondern gilt weiterhin auf viele Steuerelemente zu.

Verglichen mit dem Rest der Initialisierung, die in der Regel von einem ActiveX-Steuerelement ausgeführt wird, ist die Erstellung eines Fensters ein extrem aufwändiger Vorgang.Im Idealfall ist ein Steuerelement die Erstellung des Fensters auf absolut die notwendigen verzögern.

Viele Steuerelemente müssen keine aktiv sind die Gesamtzeit, in der sie in einem Container angezeigt werden.Häufig kann ein Steuerelement im inaktiven Zustand verbleiben, bis der Benutzer einen Vorgang ausführt, der erfordert, aktiv sein (z. B. mit der Maus geklickt oder die TAB-TASTE drücken).Um ein Steuerelement zu bewirken, dass auf den Container zu inaktiv bleiben muss sie aktivieren, entfernen OLEMISC_ACTIVATEWHENVISIBLE das Flag aus verschiedenen Flags des Steuerelements:

static const DWORD BASED_CODE _dwNVC_MFC_AxOptOleMisc =
   OLEMISC_SETCLIENTSITEFIRST |
   OLEMISC_INSIDEOUT |
   OLEMISC_CANTLINKINSIDE |
   OLEMISC_RECOMPOSEONRESIZE;

Das OLEMISC_ACTIVATEWHENVISIBLE-Flag wird automatisch ausgelassen, wenn Sie die Option Aktiviert, wenn sichtbar in der Steuern von Einstellungen Seite des MFC-ActiveX-Steuerelement-Assistenten deaktivieren, wenn Sie das Steuerelement erstellen.

Siehe auch

Konzepte

MFC-ActiveX-Steuerelemente: Optimierung