COleControl-Klasse

Eine leistungsstarke Basisklasse zum Entwickeln von OLE-Steuerelementen.

Syntax

class COleControl : public CWnd

Member

Öffentliche Konstruktoren

Name Beschreibung
COleControl::COleControl Erstellt ein COleControl-Objekt.

Öffentliche Methoden

Name Beschreibung
COleControl::AmbientAppearance Ruft die aktuelle Darstellung des Steuerelements ab.
COleControl::AmbientBackColor Gibt den Wert der Ambient BackColor -Eigenschaft zurück.
COleControl::AmbientDisplayName Gibt den Namen des Steuerelements zurück, wie vom Container angegeben.
COleControl::AmbientFont Gibt den Wert der Ambient Font -Eigenschaft zurück.
COleControl::AmbientForeColor Gibt den Wert der Umgebungs-ForeColor-Eigenschaft zurück.
COleControl::AmbientLocaleID Gibt die Gebietsschema-ID des Containers zurück.
COleControl::AmbientScaleUnits Gibt den Typ der vom Container verwendeten Einheiten zurück.
COleControl::AmbientShowGrabHandles Bestimmt, ob Ziehpunkte angezeigt werden sollen.
COleControl::AmbientShowHatching Bestimmt, ob Schlupfen angezeigt werden soll.
COleControl::AmbientTextAlign Gibt den Vom Container angegebenen Textausrichtungstyp zurück.
COleControl::AmbientUIDead Bestimmt, ob das Steuerelement auf Benutzeroberflächenaktionen reagieren soll.
COleControl::AmbientUserMode Bestimmt den Modus des Containers.
COleControl::BoundPropertyChanged Benachrichtigt den Container, dass eine gebundene Eigenschaft geändert wurde.
COleControl::BoundPropertyRequestEdit Fordert die Berechtigung zum Bearbeiten des Eigenschaftswerts an.
COleControl::ClientToParent Übersetzt einen Punkt relativ zum Ursprung des Steuerelements in einen Punkt relativ zum Ursprung des Containers.
COleControl::ClipCaretRect Passt ein Caretrechteck an, wenn es durch ein Steuerelement überlappt wird.
COleControl::ControlInfoChanged Rufen Sie diese Funktion auf, nachdem sich die vom Steuerelement behandelte Gruppe von Mnemonics geändert hat.
COleControl::D isplayError Zeigt Stock Error-Ereignisse für den Benutzer des Steuerelements an.
COleControl::D oClick Implementierung der Lagermethode DoClick .
COleControl::D oPropExchange Serialisiert die Eigenschaften eines COleControl Objekts.
COleControl::D oSuperclassPaint Zeichnet ein OLE-Steuerelement neu aus, das von einem Windows-Steuerelement unterklassigt wurde.
COleControl::EnableSimpleFrame Ermöglicht einfache Frameunterstützung für ein Steuerelement.
COleControl::ExchangeExtent Serialisiert die Breite und Höhe des Steuerelements.
COleControl::ExchangeStockProps Serialisiert die Aktieneigenschaften des Steuerelements.
COleControl::ExchangeVersion Serialisiert die Versionsnummer des Steuerelements.
COleControl::FireClick Löst das Aktienereignis Click aus.
COleControl::FireDblClick Löst das Aktienereignis DblClick aus.
COleControl::FireError Löst das Aktienereignis Error aus.
COleControl::FireEvent Löst ein benutzerdefiniertes Ereignis aus.
COleControl::FireKeyDown Löst das Aktienereignis KeyDown aus.
COleControl::FireKeyPress Löst das Aktienereignis KeyPress aus.
COleControl::FireKeyUp Löst das Aktienereignis KeyUp aus.
COleControl::FireMouseDown Löst das Aktienereignis MouseDown aus.
COleControl::FireMouseMove Löst das Aktienereignis MouseMove aus.
COleControl::FireMouseUp Löst das Aktienereignis MouseUp aus.
COleControl::FireReadyStateChange Löst ein Ereignis aus, wenn sich der Zustand des Steuerelements ändert.
COleControl::GetActivationPolicy Ändert das Standardaktivierungsverhalten eines Steuerelements, das die IPointerInactive Schnittstelle unterstützt.
COleControl::GetAmbientProperty Gibt den Wert der angegebenen Umgebungseigenschaft zurück.
COleControl::GetAppearance Gibt den Wert der Aktiendarstellungseigenschaft zurück.
COleControl::GetBackColor Gibt den Wert der BackColor-Eigenschaft der Aktie zurück.
COleControl::GetBorderStyle Gibt den Wert der BorderStyle-Eigenschaft der Aktie zurück.
COleControl::GetCapture Bestimmt, ob ein fensterloses, aktiviertes Steuerelementobjekt über die Mauserfassung verfügt.
COleControl::GetClassID Ruft die OLE-Klassen-ID des Steuerelements ab.
COleControl::GetClientOffset Ruft den Unterschied zwischen der oberen linken Ecke des rechteckigen Bereichs des Steuerelements und der oberen linken Ecke des Clientbereichs ab.
COleControl::GetClientRect Ruft die Größe des Clientbereichs des Steuerelements ab.
COleControl::GetClientSite Fragt ein Objekt für den Zeiger auf seinen aktuellen Clientstandort innerhalb des Containers ab.
COleControl::GetControlFlags Ruft die Steuerelementkennzeichnungseinstellungen ab.
COleControl::GetControlSize Gibt die Position und Größe des OLE-Steuerelements zurück.
COleControl::GetDC Stellt eine Möglichkeit für ein fensterloses Steuerelement bereit, um einen Gerätekontext aus seinem Container abzurufen.
COleControl::GetEnabled Gibt den Wert der Enabled-Eigenschaft der Aktie zurück.
COleControl::GetExtendedControl Ruft einen Zeiger auf ein erweitertes Steuerelementobjekt ab, das zum Container gehört.
COleControl::GetFocus Bestimmt, ob das Steuerelement den Fokus hat.
COleControl::GetFont Gibt den Wert der Eigenschaft "Stock Font" zurück.
COleControl::GetFontTextMetrics Gibt die Metriken eines CFontHolder Objekts zurück.
COleControl::GetForeColor Gibt den Wert der ForeColor-Eigenschaft der Aktie zurück.
COleControl::GetHwnd Gibt den Wert der hWnd-Eigenschaft der Aktie zurück.
COleControl::GetMessageString Stellt Statusleistentext für ein Menüelement bereit.
COleControl::GetNotSupported Verhindert den Zugriff auf den Eigenschaftswert eines Steuerelements durch den Benutzer.
COleControl::GetReadyState Gibt den Bereitschaftsstatus des Steuerelements zurück.
COleControl::GetRectInContainer Gibt das Rechteck des Steuerelements relativ zum Container zurück.
COleControl::GetStockTextMetrics Gibt die Metriken der Schriftart-Eigenschaft der Aktie zurück.
COleControl::GetText Gibt den Wert der Eigenschaft "Aktientext" oder "Caption" zurück.
COleControl::GetWindowlessDropTarget Überschreiben, damit ein fensterloses Steuerelement das Ziel von Drag- und Drop-Vorgängen sein kann.
COleControl::InitializeIIDs Informiert die Basisklasse der IIDs, die das Steuerelement verwendet.
COleControl::InternalGetFont Gibt ein CFontHolder Objekt für die Schriftart-Eigenschaft der Aktie zurück.
COleControl::InternalGetText Ruft die Stock Caption- oder Text-Eigenschaft ab.
COleControl::InternalSetReadyState Legt den Bereitschaftsstatus des Steuerelements fest und löst das Ready-State-Change-Ereignis aus.
COleControl::InvalidateControl Ein Bereich des angezeigten Steuerelements wird ungültig, sodass er neu gezeichnet wird.
COleControl::InvalidateRgn Ungültig wird der Clientbereich des Containerfensters innerhalb der angegebenen Region. Kann verwendet werden, um fensterlose Steuerelemente in der Region neu zu zeichnen.
COleControl::IsConvertingVBX Ermöglicht das spezialisierte Laden eines OLE-Steuerelements.
COleControl::IsModified Bestimmt, ob sich der Steuerelementstatus geändert hat.
COleControl::IsOptimizedDraw Gibt an, ob der Container eine optimierte Zeichnung für den aktuellen Zeichnungsvorgang unterstützt.
COleControl::IsSubclassedControl Wird aufgerufen, um zu ermitteln, ob das Steuerelement ein Windows-Steuerelement unterklassiert.
COleControl::Load Setzt alle vorherigen asynchronen Daten zurück und initiiert eine neue Last der asynchronen Eigenschaft des Steuerelements.
COleControl::LockInPlaceActive Bestimmt, ob Ihr Steuerelement vom Container deaktiviert werden kann.
COleControl::OnAmbientPropertyChange Wird aufgerufen, wenn eine Umgebungseigenschaft geändert wird.
COleControl::OnAppearanceChanged Wird aufgerufen, wenn die Eigenschaft "Aktiendarstellung" geändert wird.
COleControl::OnBackColorChanged Wird aufgerufen, wenn die BackColor-Eigenschaft der Aktie geändert wird.
COleControl::OnBorderStyleChanged Wird aufgerufen, wenn die BorderStyle-Aktieneigenschaft geändert wird.
COleControl::OnClick Wird aufgerufen, um das Stock Click-Ereignis auszulöschen.
COleControl::OnClose Benachrichtigt das aufgerufene Steuerelement IOleControl::Close .
COleControl::OnDoVerb Wird aufgerufen, nachdem ein Steuerelementverb ausgeführt wurde.
COleControl::OnDraw Wird aufgerufen, wenn ein Steuerelement angefordert wird, um sich selbst neu zu zeichnen.
COleControl::OnDrawMetafile Wird vom Container aufgerufen, wenn ein Steuerelement aufgefordert wird, sich mithilfe eines Metafile-Gerätekontexts neu zu zeichnen.
COleControl::OnEdit Vom Container aufgerufen, um ein OLE-Steuerelement zu aktivieren.
COleControl::OnEnabledChanged Wird aufgerufen, wenn die Eigenschaft "Stock Enabled" geändert wird.
COleControl::OnEnumVerbs Wird vom Container aufgerufen, um die Verben eines Steuerelements aufzählen zu können.
COleControl::OnEventAdvise Wird aufgerufen, wenn Ereignishandler verbunden oder von einem Steuerelement getrennt werden.
COleControl::OnFontChanged Wird aufgerufen, wenn die Eigenschaft "Stock Font" geändert wird.
COleControl::OnForeColorChanged Wird aufgerufen, wenn die ForeColor-Eigenschaft der Aktie geändert wird.
COleControl::OnFreezeEvents Wird aufgerufen, wenn die Ereignisse eines Steuerelements fixiert oder aufgehoben werden.
COleControl::OnGetColorSet Benachrichtigt das aufgerufene Steuerelement IOleObject::GetColorSet .
COleControl::OnGetControlInfo Stellt Mnemonic-Informationen für den Container bereit.
COleControl::OnGetDisplayString Wird aufgerufen, um eine Zeichenfolge abzurufen, die einen Eigenschaftswert darstellt.
COleControl::OnGetInPlaceMenu Fordert das Handle des Menüs des Steuerelements an, das mit dem Containermenü zusammengeführt wird.
COleControl::OnGetNaturalExtent Überschreiben Sie die Anzeigegröße des Steuerelements, die der vorgeschlagenen Größe und ex Zelt-Modus am nächsten kommt.
COleControl::OnGetPredefinedStrings Gibt Zeichenfolgen zurück, die mögliche Werte für eine Eigenschaft darstellen.
COleControl::OnGetPredefinedValue Gibt den Wert zurück, der einer vordefinierten Zeichenfolge entspricht.
COleControl::OnGetViewExtent Überschreiben, um die Größe der Anzeigebereiche des Steuerelements abzurufen (kann verwendet werden, um die Zeichnung mit zwei Durchlauf zu aktivieren).
COleControl::OnGetViewRect Überschreiben, um die Größe des Steuerelements in ein Rechteck zu konvertieren, das an einer bestimmten Position beginnt.
COleControl::OnGetViewStatus Überschreiben, um den Ansichtsstatus des Steuerelements abzurufen.
COleControl::OnHideToolBars Wird vom Container aufgerufen, wenn das Steuerelement auf der Benutzeroberfläche deaktiviert ist.
COleControl::OnInactiveMouseMove Überschreiben Sie den Container für das inaktive Steuerelement unter dem Mauszeiger WM_MOUSEMOVE Nachrichten an das Steuerelement.
COleControl::OnInactiveSetCursor Überschreiben Sie den Container für das inaktive Steuerelement unter dem Mauszeiger WM_SETCURSOR Nachrichten an das Steuerelement.
COleControl::OnKeyDownEvent Wird aufgerufen, nachdem das Stock KeyDown-Ereignis ausgelöst wurde.
COleControl::OnKeyPressEvent Wird aufgerufen, nachdem das Stock KeyPress-Ereignis ausgelöst wurde.
COleControl::OnKeyUpEvent Wird aufgerufen, nachdem das Stock KeyUp-Ereignis ausgelöst wurde.
COleControl::OnMapPropertyToPage Gibt an, welche Eigenschaftenseite zum Bearbeiten einer Eigenschaft verwendet werden soll.
COleControl::OnMnemonic Wird aufgerufen, wenn eine Mnemonic-Taste des Steuerelements gedrückt wurde.
COleControl::OnProperties Wird aufgerufen, wenn das Verb "Properties" des Steuerelements aufgerufen wurde.
COleControl::OnQueryHitPoint Überschreiben, um abzufragen, ob die Anzeige eines Steuerelements einen bestimmten Punkt überlappt.
COleControl::OnQueryHitRect Überschreiben, um abzufragen, ob die Anzeige eines Steuerelements einen beliebigen Punkt in einem bestimmten Rechteck überlappt.
COleControl::OnRenderData Vom Framework aufgerufen, um Daten im angegebenen Format abzurufen.
COleControl::OnRenderFileData Vom Framework aufgerufen, um Daten aus einer Datei im angegebenen Format abzurufen.
COleControl::OnRenderGlobalData Vom Framework aufgerufen, um Daten aus dem globalen Speicher im angegebenen Format abzurufen.
COleControl::OnResetState Setzt die Eigenschaften eines Steuerelements auf die Standardwerte zurück.
COleControl::OnSetClientSite Benachrichtigt das aufgerufene Steuerelement IOleControl::SetClientSite .
COleControl::OnSetData Ersetzt die Daten des Steuerelements durch einen anderen Wert.
COleControl::OnSetExtent Wird aufgerufen, nachdem sich der Umfang des Steuerelements geändert hat.
COleControl::OnSetObjectRects Wird aufgerufen, nachdem die Abmessungen des Steuerelements geändert wurden.
COleControl::OnShowToolBars Wird aufgerufen, wenn das Steuerelement aktiviert wurde.
COleControl::OnTextChanged Wird aufgerufen, wenn die Eigenschaft "Aktientext" oder "Caption" geändert wird.
COleControl::OnWindowlessMessage Verarbeitet Fenstermeldungen (außer Maus- und Tastaturmeldungen) für fensterlose Steuerelemente.
COleControl::P arentToClient Übersetzt einen Punkt relativ zum Ursprung des Containers in einen Punkt relativ zum Ursprung des Steuerelements.
COleControl::P ostModalDialog Benachrichtigt den Container, dass ein modales Dialogfeld geschlossen wurde.
COleControl::P reModalDialog Benachrichtigt den Container, dass ein modales Dialogfeld angezeigt werden soll.
COleControl::RecreateControlWindow Zerstört und erstellt das Fenster des Steuerelements erneut.
COleControl::Refresh Erzwingt eine Neudarstellung des Erscheinungsbilds eines Steuerelements.
COleControl::ReleaseCapture Gibt die Mausaufnahme frei.
COleControl::ReleaseDC Gibt den Anzeigegerätekontext eines Containers eines fensterlosen Steuerelements frei.
COleControl::ReparentControlWindow Setzt das übergeordnete Element des Steuerelementfensters zurück.
COleControl::ResetStockProps Initialisiert Aktieneigenschaften mit ihren Standardwerten COleControl .
COleControl::ResetVersion Initialisiert die Versionsnummer auf einen bestimmten Wert.
COleControl::ScrollWindow Ermöglicht einem fensterlosen Steuerelement das Scrollen eines Bereichs innerhalb des aktiven Bilds an der Stelle auf dem Bildschirm.
COleControl::SelectFontObject Wählt eine benutzerdefinierte Schriftarteigenschaft in einem Gerätekontext aus.
COleControl::SelectStockFont Wählt die Eigenschaft "Stock Font" in einem Gerätekontext aus.
COleControl::SerializeExtent Serialisiert oder initialisiert den Anzeigebereich für das Steuerelement.
COleControl::SerializeStockProps Serialisiert oder initialisiert die COleControl Aktieneigenschaften.
COleControl::SerializeVersion Serialisiert oder initialisiert die Versionsinformationen des Steuerelements.
COleControl::SetAppearance Legt den Wert der Aktiendarstellungseigenschaft fest.
COleControl::SetBackColor Legt den Wert der BackColor-Eigenschaft der Aktie fest.
COleControl::SetBorderStyle Legt den Wert der BorderStyle-Aktieneigenschaft fest.
COleControl::SetCapture Bewirkt, dass das Containerfenster des Steuerelements den Besitz der Mauserfassung im Namen des Steuerelements übernimmt.
COleControl::SetControlSize Legt die Position und Größe des OLE-Steuerelements fest.
COleControl::SetEnabled Legt den Wert der Enabled-Eigenschaft der Aktie fest.
COleControl::SetFocus Bewirkt, dass das Containerfenster des Steuerelements den Besitz des Eingabefokus im Namen des Steuerelements übernimmt.
COleControl::SetFont Legt den Wert der Eigenschaft "Stock Font" fest.
COleControl::SetForeColor Legt den Wert der ForeColor-Eigenschaft der Aktie fest.
COleControl::SetInitialSize Legt die Größe eines OLE-Steuerelements fest, wenn es zum ersten Mal in einem Container angezeigt wird.
COleControl::SetModifiedFlag Ändert den geänderten Zustand eines Steuerelements.
COleControl::SetNotPermitted Gibt an, dass eine Bearbeitungsanforderung fehlgeschlagen ist.
COleControl::SetNotSupported Verhindert die Änderung des Eigenschaftswerts eines Steuerelements durch den Benutzer.
COleControl::SetRectInContainer Legt das Rechteck des Steuerelements relativ zum Container fest.
COleControl::SetText Legt den Wert der Aktientext- oder Caption-Eigenschaft fest.
COleControl::ThrowError Signal, dass in einem OLE-Steuerelement ein Fehler aufgetreten ist.
COleControl::TransformCoords Transformiert Koordinatenwerte zwischen einem Container und dem Steuerelement.
COleControl::TranslateColor Wandelt einen OLE_COLOR Wert in einen COLORREF-Wert um.
COleControl::WillAmbientsBeValidDuringLoad Bestimmt, ob Umgebungseigenschaften beim nächsten Laden des Steuerelements verfügbar sein werden.
COleControl::WindowProc Stellt eine Windows-Prozedur für ein COleControl Objekt bereit.

Geschützte Methoden

Name Beschreibung
COleControl::D rawContent Wird vom Framework aufgerufen, wenn die Darstellung des Steuerelements aktualisiert werden muss.
COleControl::D rawMetafile Wird vom Framework aufgerufen, wenn der Metadateigerätekontext verwendet wird.
COleControl::IsInvokeAllowed Aktiviert den Aufruf der Automatisierungsmethode.
COleControl::SetInitialDataFormats Vom Framework aufgerufen, um die Liste der vom Steuerelement unterstützten Datenformate zu initialisieren.

Hinweise

Abgeleitet von CWnd, erbt diese Klasse alle Funktionen eines Windows-Fensterobjekts sowie zusätzliche Funktionen speziell für OLE, z. B. Ereignisfeuerung und die Möglichkeit, Methoden und Eigenschaften zu unterstützen.

OLE-Steuerelemente können in OLE-Containeranwendungen eingefügt und mit dem Container kommunizieren, indem sie ein bidirektionales System zum Auslösen und Verfügbarmachen von Methoden und Eigenschaften für den Container verwenden. Beachten Sie, dass standardmäßige OLE-Container nur die grundlegenden Funktionen eines OLE-Steuerelements unterstützen. Sie können keine erweiterten Features eines OLE-Steuerelements unterstützen. Ereignis ausgelöst wird, wenn Ereignisse aufgrund bestimmter Aktionen im Steuerelement an den Container gesendet werden. Der Container kommuniziert wiederum mit dem Steuerelement mithilfe einer verfügbar gemachten Gruppe von Methoden und Eigenschaften analog zu den Memberfunktionen und Datenmembern einer C++-Klasse. Mit diesem Ansatz kann der Entwickler das Erscheinungsbild des Steuerelements steuern und den Container benachrichtigen, wenn bestimmte Aktionen auftreten.

Fensterlose Steuerelemente

OLE-Steuerelemente können ohne Fenster aktiv verwendet werden. Fensterlose Steuerelemente haben erhebliche Vorteile:

  • Fensterlose Steuerelemente können transparent und nicht rechteckig sein

  • Fensterlose Steuerelemente reduzieren die Instanzengröße und die Erstellungszeit des Objekts.

Steuerelemente benötigen kein Fenster. Dienste, die ein Fenster bietet, können einfach über ein einzelnes freigegebenes Fenster (in der Regel der Container) und ein wenig Dispatching-Code bereitgestellt werden. Das Vorhandensein eines Fensters ist meist eine unnötige Komplikation für das Objekt.

Wenn die fensterlose Aktivierung verwendet wird, ist der Container (der über ein Fenster verfügt) für die Bereitstellung von Diensten verantwortlich, die andernfalls vom eigenen Fenster des Steuerelements bereitgestellt wurden. Wenn Ihr Steuerelement beispielsweise den Tastaturfokus abfragen, die Mauserfassung abfragen oder einen Gerätekontext abrufen muss, werden diese Vorgänge vom Container verwaltet. Die COleControl Memberfunktionen des Fensterlosen Vorgangs rufen diese Vorgänge im Container auf.

Wenn die fensterlose Aktivierung aktiviert ist, delegiert der Container Eingabemeldungen an die Schnittstelle des Steuerelements IOleInPlaceObjectWindowless (eine Erweiterung von IOleInPlaceObject für die fensterlose Unterstützung). COleControlDie Implementierung dieser Schnittstelle sendet diese Nachrichten über die Nachrichtenzuordnung Ihres Steuerelements, nachdem sie die Mauskoordinaten entsprechend angepasst haben. Sie können diese Nachrichten wie normale Fensternachrichten verarbeiten, indem Sie die entsprechenden Einträge zur Nachrichtenzuordnung hinzufügen.

In einem fensterlosen Steuerelement sollten Sie immer die COleControl Memberfunktionen anstelle der entsprechenden CWnd Memberfunktionen oder der zugehörigen Windows-API-Funktionen verwenden.

OLE-Steuerelementobjekte können auch nur dann ein Fenster erstellen, wenn sie aktiv werden, aber die für den inaktiven aktiven Übergang erforderliche Arbeit geht nach oben und die Geschwindigkeit des Übergangs sinkt. Es gibt Fälle, in denen dies ein Problem ist: Betrachten Sie beispielsweise ein Raster von Textfeldern. Beim Cursorn über die Spalte muss jedes Steuerelement aktiviert und dann deaktiviert werden. Die Geschwindigkeit des inaktiven/aktiven Übergangs wirkt sich direkt auf die Bildlaufgeschwindigkeit aus.

Weitere Informationen zum Entwickeln eines OLE-Steuerelementframeworks finden Sie in den Artikeln MFC ActiveX Controls and Overview: Creating an MFC ActiveX Control Program. Informationen zum Optimieren von OLE-Steuerelementen, einschließlich fensterloser und flackerfreier Steuerelemente, finden Sie unter MFC ActiveX Controls: Optimization.

Vererbungshierarchie

CObject

CCmdTarget

CWnd

COleControl

Anforderungen

Kopfzeile: afxctl.h

COleControl::AmbientBackColor

Gibt den Wert der Ambient BackColor -Eigenschaft zurück.

OLE_COLOR AmbientBackColor();

Rückgabewert

Der aktuelle Wert der Ambient BackColor-Eigenschaft des Containers( falls vorhanden). Wenn die Eigenschaft nicht unterstützt wird, gibt diese Funktion die vom System definierte Windows-Hintergrundfarbe zurück.

Hinweise

Die Ambient BackColor-Eigenschaft ist für alle Steuerelemente verfügbar und wird vom Container definiert. Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientDisplayName

Der Name, den der Container dem Steuerelement zugewiesen hat, kann in Fehlermeldungen verwendet werden, die dem Benutzer angezeigt werden.

CString AmbientDisplayName();

Rückgabewert

Der Name des OLE-Steuerelements. Der Standardwert ist eine leere Zeichenfolge.

Hinweise

Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientFont

Gibt den Wert der Ambient Font -Eigenschaft zurück.

LPFONTDISP AmbientFont();

Rückgabewert

Ein Zeiger auf die Umgebungsschriftart-Dispatch-Schnittstelle des Containers. Der Standardwert ist NULL. Wenn die Rückgabe ungleich NULL ist, sind Sie dafür verantwortlich, die Schriftart freizugeben, indem Sie die Funktion "IUnknown::Release member" aufrufen.

Hinweise

Die Ambient Font-Eigenschaft wird vom Container definiert und für alle Steuerelemente verfügbar. Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientForeColor

Gibt den Wert der Umgebungs-ForeColor-Eigenschaft zurück.

OLE_COLOR AmbientForeColor();

Rückgabewert

Der aktuelle Wert der Umgebungs-ForeColor-Eigenschaft des Containers( falls vorhanden). Wenn diese Funktion nicht unterstützt wird, gibt diese Funktion die vom System definierte Windows-Textfarbe zurück.

Hinweise

Die Ambient ForeColor-Eigenschaft ist für alle Steuerelemente verfügbar und wird vom Container definiert. Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientLocaleID

Gibt die Gebietsschema-ID des Containers zurück.

LCID AmbientLocaleID();

Rückgabewert

Der Wert der LocaleID-Eigenschaft des Containers( falls vorhanden). Wenn diese Eigenschaft nicht unterstützt wird, gibt diese Funktion 0 zurück.

Hinweise

Das Steuerelement kann die LocaleID verwenden, um die Benutzeroberfläche für bestimmte Gebietsschemas anzupassen. Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientAppearance

Ruft die aktuelle Darstellungseinstellung für das Steuerelementobjekt ab.

short AmbientAppearance();

Rückgabewert

Die Darstellung des Steuerelements:

  • 0 Flache Darstellung

  • 1 3D-Darstellung

Hinweise

Rufen Sie diese Funktion auf, um den aktuellen Wert der DISPID_AMBIENT_APPEARANCE-Eigenschaft für das Steuerelement abzurufen.

COleControl::AmbientScaleUnits

Gibt den Typ der vom Container verwendeten Einheiten zurück.

CString AmbientScaleUnits();

Rückgabewert

Eine Zeichenfolge, die die Ambient ScaleUnits des Containers enthält. Wenn diese Eigenschaft nicht unterstützt wird, gibt diese Funktion eine leere Zeichenfolge zurück.

Hinweise

Die Ambient ScaleUnits-Eigenschaft des Containers kann verwendet werden, um Positionen oder Dimensionen anzuzeigen, die mit der ausgewählten Einheit gekennzeichnet sind, z. B. Twips oder Zentimeter. Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientShowGrabHandles

Bestimmt, ob der Container das Anzeigen von Ziehpunkten für sich selbst ermöglicht, wenn der Container aktiv ist.

BOOL AmbientShowGrabHandles();

Rückgabewert

Nonzero, wenn Ziehpunkte angezeigt werden sollen; andernfalls 0. Wenn diese Eigenschaft nicht unterstützt wird, gibt diese Funktion nonzero zurück.

Hinweise

Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientShowHatching

Bestimmt, ob der Container das Anzeigen des Steuerelements mit einem geschlüpften Muster ermöglicht, wenn die Benutzeroberfläche aktiv ist.

BOOL AmbientShowHatching();

Rückgabewert

Nonzero, wenn das geschlüpfte Muster angezeigt werden soll; andernfalls 0. Wenn diese Eigenschaft nicht unterstützt wird, gibt diese Funktion nonzero zurück.

Hinweise

Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientTextAlign

Bestimmt die vom Steuerelementcontainer bevorzugte Ausrichtung des Umgebungstexts.

short AmbientTextAlign();

Rückgabewert

Der Status der UmgebungstextAlign-Eigenschaft des Containers. Wenn diese Eigenschaft nicht unterstützt wird, gibt diese Funktion 0 zurück.

Es folgt eine Liste gültiger Rückgabewerte:

Rückgabewert Bedeutung
0 Allgemeine Ausrichtung (Zahlen rechts, Text links).
1 Linker Blocksatz
2 Center
3 Rechter Blocksatz

Hinweise

Diese Eigenschaft ist für alle eingebetteten Steuerelemente verfügbar und wird vom Container definiert. Beachten Sie, dass der Container nicht erforderlich ist, um diese Eigenschaft zu unterstützen.

COleControl::AmbientUIDead

Bestimmt, ob der Container das Steuerelement auf Benutzeroberflächenaktionen reagieren soll.

BOOL AmbientUIDead();

Rückgabewert

Nonzero, wenn das Steuerelement auf Benutzeroberflächenaktionen reagieren soll; andernfalls 0. Wenn diese Eigenschaft nicht unterstützt wird, gibt diese Funktion 0 zurück.

Hinweise

Ein Container kann dies beispielsweise im Entwurfsmodus auf TRUE festlegen.

COleControl::AmbientUserMode

Bestimmt, ob sich der Container im Entwurfsmodus oder im Benutzermodus befindet.

BOOL AmbientUserMode();

Rückgabewert

Nonzero, wenn sich der Container im Benutzermodus befindet; andernfalls 0 (im Entwurfsmodus). Wenn diese Eigenschaft nicht unterstützt wird, gibt diese Funktion WAHR zurück.

Hinweise

Ein Container kann dies z. B. im Entwurfsmodus auf FALSE festlegen.

COleControl::BoundPropertyChanged

Signal, dass sich der gebundene Eigenschaftswert geändert hat.

void BoundPropertyChanged(DISPID dispid);

Parameter

Dispid
Die Verteiler-ID einer gebundenen Eigenschaft des Steuerelements.

Hinweise

Dies muss jedes Mal aufgerufen werden, wenn sich der Wert der Eigenschaft ändert, auch in Fällen, in denen die Änderung nicht über die Eigenschaft Set-Methode vorgenommen wurde. Beachten Sie insbesondere gebundene Eigenschaften, die Membervariablen zugeordnet sind. Jedes Mal, wenn eine solche Membervariable geändert wird, BoundPropertyChanged muss aufgerufen werden.

COleControl::BoundPropertyRequestEdit

Fordert berechtigungen von der IPropertyNotifySink Schnittstelle an, um einen gebundenen Eigenschaftswert zu ändern, der vom Steuerelement bereitgestellt wird.

BOOL BoundPropertyRequestEdit(DISPID dispid);

Parameter

Dispid
Die Verteiler-ID einer gebundenen Eigenschaft des Steuerelements.

Rückgabewert

Nonzero, wenn die Änderung zulässig ist; andernfalls 0. Der Standardwert ist "nonzero".

Hinweise

Wenn die Berechtigung verweigert wird, darf das Steuerelement den Wert der Eigenschaft nicht ändern lassen. Dies kann durch Ignorieren oder Fehlschlagen der Aktion erfolgen, die versucht hat, den Eigenschaftswert zu ändern.

COleControl::ClientToParent

Übersetzt die Koordinaten von pPoint in übergeordnete Koordinaten.

virtual void ClientToParent(
    LPCRECT lprcBounds,
    LPPOINT pPoint) const;

Parameter

lprcBounds
Zeigen Sie auf die Grenzen des OLE-Steuerelements innerhalb des Containers. Nicht der Clientbereich, sondern der Bereich des gesamten Steuerelements, einschließlich Rahmen und Bildlaufleisten.

pPoint
Zeiger auf den OLE-Clientbereichspunkt, der in die Koordinaten des übergeordneten Elements (Container) übersetzt werden soll.

Hinweise

Bei Eingabe pPoint relativ zum Ursprung des Clientbereichs des OLE-Steuerelements (obere linke Ecke des Clientbereichs des Steuerelements). Bei ausgabe pPoint relativ zum Ursprung des übergeordneten Elements (obere linke Ecke des Containers).

COleControl::ClipCaretRect

Passt ein Caretrechteck an, wenn es vollständig oder teilweise durch überlappende, undurchsichtige Objekte abgedeckt ist.

BOOL ClipCaretRect(LPRECT lpRect);

Parameter

lpRect
Bei Eingaben zeigt ein Zeiger auf eine RECT-Struktur , die den zu anpassenden Caretbereich enthält. Bei der Ausgabe, dem angepassten Caretbereich oder NULL, wenn das Caretrechteck vollständig abgedeckt ist.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Ein Caret ist eine blinkende Linie, ein Block oder eine Bitmap, die in der Regel angibt, wo Text oder Grafiken eingefügt werden.

Ein fensterloses Objekt kann kein Caret sicher anzeigen, ohne zuerst zu überprüfen, ob das Caret teilweise oder vollständig durch überlappende Objekte ausgeblendet ist. Um dies zu ermöglichen, kann ein Objekt verwendet ClipCaretRect werden, um das Caret angepasst (reduziert) zu erhalten, um sicherzustellen, dass es in den Beschneidungsbereich passt.

Objekte, die ein Caret erstellen, sollten das Caretrechteck an das caret-Rechteck ClipCaretRect übermitteln und das angepasste Rechteck für das Caret verwenden. Wenn das Caret vollständig ausgeblendet ist, gibt diese Methode FALSE zurück, und das Caret sollte in diesem Fall nicht angezeigt werden.

COleControl::COleControl

Erstellt ein COleControl-Objekt.

COleControl();

Hinweise

Diese Funktion wird normalerweise nicht direkt aufgerufen. Stattdessen wird das OLE-Steuerelement in der Regel von der Klassenfactory erstellt.

COleControl::ControlInfoChanged

Rufen Sie diese Funktion auf, wenn sich die vom Steuerelement unterstützte Gruppe von Mnemonics geändert hat.

void ControlInfoChanged();

Hinweise

Beim Empfang dieser Benachrichtigung ruft der Container des Steuerelements den neuen Mnemonics-Satz ab, indem er IOleControl::GetControlInfo aufruft. Beachten Sie, dass der Container nicht erforderlich ist, um auf diese Benachrichtigung zu reagieren.

COleControl::D isplayError

Wird vom Framework aufgerufen, nachdem das Stock Error-Ereignis behandelt wurde (es sei denn, der Ereignishandler hat die Anzeige des Fehlers unterdrückt).

virtual void DisplayError(
    SCODE scode,
    LPCTSTR lpszDescription,
    LPCTSTR lpszSource,
    LPCTSTR lpszHelpFile,
    UINT nHelpID);

Parameter

scode
Der statuscodewert, der gemeldet werden soll. Eine vollständige Liste der möglichen Codes finden Sie im Artikel ActiveX-Steuerelemente: Erweiterte Themen.

lpszDescription
Die Beschreibung des gemeldeten Fehlers.

lpszSource
Der Name des Moduls, das den Fehler generiert (normalerweise der Name des OLE-Steuerelementmoduls).

lpszHelpFile
Der Name der Hilfedatei, die eine Beschreibung des Fehlers enthält.

nHelpID
Die Hilfekontext-ID des gemeldeten Fehlers.

Hinweise

Das Standardverhalten zeigt ein Meldungsfeld mit der Beschreibung des Fehlers an, die in lpszDescription enthalten ist.

Überschreiben Sie diese Funktion, um anzupassen, wie Fehler angezeigt werden.

COleControl::D oClick

Simuliert eine Mausklickaktion auf dem Steuerelement.

void DoClick();

Hinweise

Die überschreibbare COleControl::OnClick Memberfunktion wird aufgerufen, und ein Stock Click-Ereignis wird ausgelöst, wenn das Steuerelement unterstützt wird.

Diese Funktion wird von der COleControl Basisklasse als Aktienmethode unterstützt, die als DoClick bezeichnet wird. Weitere Informationen finden Sie im Artikel ActiveX-Steuerelemente: Methoden.

COleControl::D oPropExchange

Wird vom Framework aufgerufen, wenn ein Steuerelement aus einer persistenten Speicherdarstellung geladen oder gespeichert wird, z. B. ein Datenstrom oder ein Eigenschaftensatz.

virtual void DoPropExchange(CPropExchange* pPX);

Parameter

Ppx
Ein Zeiger auf ein CPropExchange-Objekt. Das Framework stellt dieses Objekt bereit, um den Kontext des Immobilienaustauschs einschließlich seiner Richtung festzulegen.

Hinweise

Diese Funktion ruft normalerweise die PX_ Familie von Funktionen auf, um bestimmte benutzerdefinierte Eigenschaften eines OLE-Steuerelements zu laden oder zu speichern.

Wenn der Steuerelement-Assistent zum Erstellen des OLE-Steuerelementprojekts verwendet wurde, serialisiert die überschriebene Version dieser Funktion die Aktieneigenschaften, die von COleControl einem Aufruf der Basisklassenfunktion unterstützt werden. COleControl::DoPropExchange Wenn Sie Ihrem OLE-Steuerelement benutzerdefinierte Eigenschaften hinzufügen, müssen Sie diese Funktion ändern, um ihre neuen Eigenschaften zu serialisieren. Weitere Informationen zur Serialisierung finden Sie im Artikel ActiveX-Steuerelemente: Serialisieren.

COleControl::D oSuperclassPaint

Zeichnet ein OLE-Steuerelement neu aus, das von einem Windows-Steuerelement unterklassigt wurde.

void DoSuperclassPaint(
    CDC* pDC,
    const CRect& rcBounds);

Parameter

pDC
Ein Zeiger auf den Gerätekontext des Steuerelementcontainers.

rcBounds
Der Bereich, in dem das Steuerelement gezeichnet werden soll.

Hinweise

Rufen Sie diese Funktion auf, um das Zeichnen eines nichtaktiven OLE-Steuerelements ordnungsgemäß zu behandeln. Diese Funktion sollte nur verwendet werden, wenn das OLE-Steuerelement ein Windows-Steuerelement unterklassiert und in der OnDraw Funktion Ihres Steuerelements aufgerufen werden soll.

Weitere Informationen zu dieser Funktion und Unterklassen eines Windows-Steuerelements finden Sie im Artikel ActiveX-Steuerelemente: Unterklassen eines Windows-Steuerelements.

COleControl::D rawContent

Wird vom Framework aufgerufen, wenn die Darstellung des Steuerelements aktualisiert werden muss.

void DrawContent(
    CDC* pDC,
    CRect& rc);

Parameter

pDC
Zeiger auf den Gerätekontext.

Rc
Rechteckiger Bereich, in den gezeichnet werden soll.

Hinweise

Diese Funktion ruft die überschreibbare OnDraw Funktion direkt auf.

COleControl::D rawMetafile

Wird vom Framework aufgerufen, wenn der Metadateigerätekontext verwendet wird.

void DrawMetafile(
    CDC* pDC,
    CRect& rc);

Parameter

pDC
Zeiger auf den Kontext des Metadateigeräts.

Rc
Rechteckiger Bereich, in den gezeichnet werden soll.

COleControl::EnableSimpleFrame

Ermöglicht die einfache Frameeigenschaft für ein OLE-Steuerelement.

void EnableSimpleFrame();

Hinweise

Mit dieser Eigenschaft kann ein Steuerelement die visuelle Eindämmung anderer Steuerelemente unterstützen, aber keine echte OLE-Eindämmung. Ein Beispiel wäre ein Gruppenfeld mit mehreren Steuerelementen innerhalb. Diese Steuerelemente sind nicht OLE enthalten, befinden sich aber im gleichen Gruppenfeld.

COleControl::ExchangeExtent

Serialisiert oder initialisiert den Zustand des Steuerelementumfangs (seine Abmessungen in HIMETRIC-Einheiten).

BOOL ExchangeExtent(CPropExchange* pPX);

Parameter

Ppx
Ein Zeiger auf ein CPropExchange-Objekt . Das Framework stellt dieses Objekt bereit, um den Kontext des Immobilienaustauschs einschließlich seiner Richtung festzulegen.

Rückgabewert

Nonzero, wenn die Funktion erfolgreich war; 0 andernfalls.

Hinweise

Diese Funktion wird normalerweise von der Standardimplementierung von COleControl::DoPropExchange.

COleControl::ExchangeStockProps

Serialisiert oder initialisiert den Zustand der Aktieneigenschaften des Steuerelements.

void ExchangeStockProps(CPropExchange* pPX);

Parameter

Ppx
Ein Zeiger auf ein CPropExchange-Objekt . Das Framework stellt dieses Objekt bereit, um den Kontext des Immobilienaustauschs einschließlich seiner Richtung festzulegen.

Hinweise

Diese Funktion wird normalerweise von der Standardimplementierung von COleControl::DoPropExchange.

COleControl::ExchangeVersion

Serialisiert oder initialisiert den Status der Versionsinformationen eines Steuerelements.

BOOL ExchangeVersion(
    CPropExchange* pPX,
    DWORD dwVersionDefault,
    BOOL bConvert = TRUE);

Parameter

Ppx
Ein Zeiger auf ein CPropExchange-Objekt. Das Framework stellt dieses Objekt bereit, um den Kontext des Immobilienaustauschs einschließlich seiner Richtung festzulegen.

dwVersionDefault
Die aktuelle Versionsnummer des Steuerelements.

bConvert
Gibt an, ob persistente Daten beim Speichern in das neueste Format konvertiert werden sollen, oder Standard in dem format, das geladen wurde.

Rückgabewert

Nonzero der Funktion erfolgreich; 0 andernfalls.

Hinweise

In der Regel ist dies die erste Funktion, die von der Außerkraftsetzung COleControl::DoPropExchangeeines Steuerelements aufgerufen wird. Beim Laden liest diese Funktion die Versionsnummer der persistenten Daten und legt das Versionsattribut des CPropExchange-Objekts entsprechend fest. Beim Speichern schreibt diese Funktion die Versionsnummer der persistenten Daten.

Weitere Informationen zur Persistenz und Versionsverwaltung finden Sie im Artikel ActiveX-Steuerelemente: Serialisieren.

COleControl::FireClick

Wird vom Framework aufgerufen, wenn die Maus über ein aktives Steuerelement geklickt wird.

void FireClick();

Hinweise

Wenn dieses Ereignis als benutzerdefiniertes Ereignis definiert ist, bestimmen Sie, wann das Ereignis ausgelöst wird.

Damit ein Click-Ereignis automatisch ausgelöst wird, muss die Ereigniszuordnung des Steuerelements ein Stock Click-Ereignis definiert haben.

COleControl::FireDblClick

Wird vom Framework aufgerufen, wenn die Maus über ein aktives Steuerelement doppelklicken wird.

void FireDblClick();

Hinweise

Wenn dieses Ereignis als benutzerdefiniertes Ereignis definiert ist, bestimmen Sie, wann das Ereignis ausgelöst wird.

Damit ein DblClick-Ereignis automatisch ausgelöst wird, muss die Ereigniszuordnung des Steuerelements ein DblClick-Stock-Ereignis definiert haben.

COleControl::FireError

Löst das Stock Error-Ereignis aus.

void FireError(
    SCODE scode,
    LPCTSTR lpszDescription,
    UINT nHelpID = 0);

Parameter

scode
Der statuscodewert, der gemeldet werden soll. Eine vollständige Liste der möglichen Codes finden Sie im Artikel ActiveX-Steuerelemente: Erweiterte Themen.

lpszDescription
Die Beschreibung des gemeldeten Fehlers.

nHelpID
Die Hilfe-ID des gemeldeten Fehlers.

Hinweise

Dieses Ereignis bietet eine Möglichkeit, an geeigneten Stellen im Code zu signalisieren, dass innerhalb des Steuerelements ein Fehler aufgetreten ist. Im Gegensatz zu anderen Aktienereignissen, z. B. Click oder MouseMove, wird Der Fehler nie vom Framework ausgelöst.

Rufen Sie COleControl::ThrowError auf, um einen Fehler zu melden, der während einer Eigenschafts-, Eigenschaftensatz- oder Automatisierungsmethode auftritt.

Die Implementierung des Stock Error-Ereignisses eines OLE-Steuerelements verwendet einen SCODE-Wert. Wenn Ihr Steuerelement dieses Ereignis verwendet und in Visual Basic 4.0 verwendet werden soll, erhalten Sie Fehler, da der SCODE-Wert in Visual Basic nicht unterstützt wird.

Um dies zu beheben, ändern Sie den SCODE-Parameter im Steuerelement manuell. ODL-Datei in einer long. Darüber hinaus verursacht jedes benutzerdefinierte Ereignis, jede Methode oder Eigenschaft, die einen SCODE-Parameter verwendet, das gleiche Problem.

COleControl::FireEvent

Löst ein benutzerdefiniertes Ereignis aus Ihrem Steuerelement mit einer beliebigen Anzahl optionaler Argumente aus.

void AFX_CDECL FireEvent(
    DISPID dispid,
    BYTE* pbParams,
...);

Parameter

Dispid
Die Verteiler-ID des ereignisses, das ausgelöst werden soll.

PbParams
Ein Deskriptor für die Parametertypen des Ereignisses.

Hinweise

In der Regel sollte diese Funktion nicht direkt aufgerufen werden. Stattdessen rufen Sie die Ereignis ausgelösten Funktionen im Abschnitt "Ereigniszuordnung" der Klassendeklaration Ihres Steuerelements auf.

Das PbParams-Argument ist eine durch Leerzeichen getrennte Liste von VTS_. Einer oder mehrere dieser Werte, durch Leerzeichen (nicht Kommas) getrennt, gibt bzw. geben die Parameterliste der Funktion an. Verfügbare mögliche Werte:

Symbol Parametertyp
VTS_COLOR OLE_COLOR
VTS_FONT IFontDisp*
VTS_HANDLE HWND
VTS_PICTURE IPictureDisp*
VTS_OPTEXCLUSIVE OLE_OPTEXCLUSIVE*
VTS_TRISTATE OLE_TRISTATE
VTS_XPOS_HIMETRIC OLE_XPOS_HIMETRIC
VTS_YPOS_HIMETRIC OLE_YPOS_HIMETRIC
VTS_XPOS_PIXELS OLE_XPOS_PIXELS
VTS_YPOS_PIXELS OLE_YPOS_PIXELS
VTS_XSIZE_PIXELS OLE_XSIZE_PIXELS
VTS_YSIZE_PIXELS OLE_XSIZE_PIXELS
VTS_XSIZE_HIMETRIC OLE_XSIZE_HIMETRIC
VTS_YSIZE_HIMETRIC OLE_XSIZE_HIMETRIC

Hinweis

Für alle Variantentypen wurden zusätzliche Variantenkonstanten definiert, mit Ausnahme von VTS_FONT und VTS_PICTURE, die einen Zeiger auf die Variant-Datenkonstante bereitstellen. Diese Konstanten werden mithilfe der VTS_P<CONSTANT-NAME-Konvention> benannt. Beispielsweise ist VTS_PCOLOR ein Zeiger auf eine VTS_COLOR Konstante.

COleControl::FireKeyDown

Wird vom Framework aufgerufen, wenn eine Taste gedrückt wird, während das Steuerelement aktiv ist.

void FireKeyDown(
    USHORT* pnChar,
    short nShiftState);

Parameter

pnChar
Zeigen Sie auf den Wert des virtuellen Schlüsselcodes der gedrückten Taste. Eine Liste der standardmäßigen virtuellen Schlüsselcodes finden Sie unter Winuser.h

nShiftState
Enthält eine Kombination der folgenden Flags:

  • SHIFT_MASK Die UMSCHALTTASTE wurde während der Aktion gedrückt.

  • CTRL_MASK Die STRG-TASTE wurde während der Aktion gedrückt.

  • ALT_MASK Die ALT-TASTE wurde während der Aktion gedrückt.

Hinweise

Wenn dieses Ereignis als benutzerdefiniertes Ereignis definiert ist, bestimmen Sie, wann das Ereignis ausgelöst wird.

Damit ein KeyDown-Ereignis automatisch ausgelöst wird, muss die Ereigniszuordnung des Steuerelements ein Stock KeyDown-Ereignis definiert haben.

COleControl::FireKeyPress

Wird vom Framework aufgerufen, wenn eine Taste gedrückt und losgelassen wird, während das benutzerdefinierte Steuerelement ui Active innerhalb des Containers ist.

void FireKeyPress(USHORT* pnChar);

Parameter

pnChar
Ein Zeiger auf den Zeichenwert der gedrückten Taste.

Hinweise

Wenn dieses Ereignis als benutzerdefiniertes Ereignis definiert ist, bestimmen Sie, wann das Ereignis ausgelöst wird.

Der Empfänger des Ereignisses kann z. B. pnChar ändern, um beispielsweise alle Kleinbuchstaben in Großbuchstaben zu konvertieren. Wenn Sie das geänderte Zeichen untersuchen möchten, überschreiben OnKeyPressEventSie das Zeichen.

Damit ein KeyPress-Ereignis automatisch ausgelöst wird, muss die Ereigniszuordnung des Steuerelements ein Stock KeyPress-Ereignis definiert haben.

COleControl::FireKeyUp

Wird vom Framework aufgerufen, wenn ein Schlüssel freigegeben wird, während das benutzerdefinierte Steuerelement ui Active innerhalb des Containers ist.

void FireKeyUp(
    USHORT* pnChar,
    short nShiftState);

Parameter

pnChar
Zeigen Sie auf den Wert des virtuellen Schlüsselcodes des freigegebenen Schlüssels. Eine Liste der standardmäßigen virtuellen Schlüsselcodes finden Sie unter Winuser.h

nShiftState
Enthält eine Kombination der folgenden Flags:

  • SHIFT_MASK Die UMSCHALTTASTE wurde während der Aktion gedrückt.

  • CTRL_MASK Die STRG-TASTE wurde während der Aktion gedrückt.

  • ALT_MASK Die ALT-TASTE wurde während der Aktion gedrückt.

Hinweise

Wenn dieses Ereignis als benutzerdefiniertes Ereignis definiert ist, bestimmen Sie, wann das Ereignis ausgelöst wird.

Damit ein KeyUp-Ereignis automatisch ausgelöst wird, muss die Ereigniszuordnung des Steuerelements ein Stock KeyUp-Ereignis definiert haben.

COleControl::FireMouseDown

Wird vom Framework aufgerufen, wenn eine Maustaste über ein aktives benutzerdefiniertes Steuerelement gedrückt wird.

void FireMouseDown(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Parameter

nButton
Der numerische Wert der gedrückten Maustaste. Sie kann einen der folgenden Werte enthalten:

  • LEFT_BUTTON Die linke Maustaste wurde nach unten gedrückt.

  • MIDDLE_BUTTON Die mittlere Maustaste wurde gedrückt.

  • RIGHT_BUTTON Die rechte Maustaste wurde gedrückt.

nShiftState
Enthält eine Kombination der folgenden Flags:

  • SHIFT_MASK Die UMSCHALTTASTE wurde während der Aktion gedrückt.

  • CTRL_MASK Die STRG-TASTE wurde während der Aktion gedrückt.

  • ALT_MASK Die ALT-TASTE wurde während der Aktion gedrückt.

x
Die x-Koordinate des Cursors, wenn eine Maustaste gedrückt wurde. Die Koordinate ist relativ zur oberen linken Ecke des Steuerelementfensters.

y
Die Y-Koordinate des Cursors, wenn eine Maustaste gedrückt wurde. Die Koordinate ist relativ zur oberen linken Ecke des Steuerelementfensters.

Hinweise

Wenn dieses Ereignis als benutzerdefiniertes Ereignis definiert ist, bestimmen Sie, wann das Ereignis ausgelöst wird.

Damit ein MouseDown-Ereignis automatisch ausgelöst wird, muss die Ereigniszuordnung des Steuerelements ein Stock MouseDown-Ereignis definiert haben.

COleControl::FireMouseMove

Wird vom Framework aufgerufen, wenn der Cursor über ein aktives benutzerdefiniertes Steuerelement verschoben wird.

void FireMouseMove(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Parameter

nButton
Der numerische Wert der gedrückten Maustasten. Enthält eine Kombination der folgenden Werte:

  • LEFT_BUTTON Die linke Maustaste wurde während der Aktion nach unten gedrückt.

  • MIDDLE_BUTTON Die mittlere Maustaste wurde während der Aktion gedrückt.

  • RIGHT_BUTTON Die rechte Maustaste wurde während der Aktion nach unten gedrückt.

nShiftState
Enthält eine Kombination der folgenden Flags:

  • SHIFT_MASK Die UMSCHALTTASTE wurde während der Aktion gedrückt.

  • CTRL_MASK Die STRG-TASTE wurde während der Aktion gedrückt.

  • ALT_MASK Die ALT-TASTE wurde während der Aktion gedrückt.

x
Die x-Koordinate des Cursors. Die Koordinate ist relativ zur oberen linken Ecke des Steuerelementfensters.

y
Die y-Koordinate des Cursors. Die Koordinate ist relativ zur oberen linken Ecke des Steuerelementfensters.

Hinweise

Wenn dieses Ereignis als benutzerdefiniertes Ereignis definiert ist, bestimmen Sie, wann das Ereignis ausgelöst wird.

Damit ein MouseMove-Ereignis automatisch ausgelöst wird, muss die Ereigniszuordnung des Steuerelements ein Stock MouseMove-Ereignis definiert haben.

COleControl::FireMouseUp

Wird vom Framework aufgerufen, wenn eine Maustaste über ein aktives benutzerdefiniertes Steuerelement losgelassen wird.

void FireMouseUp(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Parameter

nButton
Der numerische Wert der losgelassenen Maustaste. Sie kann einen der folgenden Werte aufweisen:

  • LEFT_BUTTON Die linke Maustaste wurde losgelassen.

  • MIDDLE_BUTTON Die mittlere Maustaste wurde losgelassen.

  • RIGHT_BUTTON Die rechte Maustaste wurde losgelassen.

nShiftState
Enthält eine Kombination der folgenden Flags:

  • SHIFT_MASK Die UMSCHALTTASTE wurde während der Aktion gedrückt.

  • CTRL_MASK Die STRG-TASTE wurde während der Aktion gedrückt.

  • ALT_MASK Die ALT-TASTE wurde während der Aktion gedrückt.

x
Die x-Koordinate des Cursors, wenn eine Maustaste losgelassen wurde. Die Koordinate ist relativ zur oberen linken Ecke des Steuerelementfensters.

y
Die Y-Koordinate eines Cursors, wenn eine Maustaste losgelassen wurde. Die Koordinate ist relativ zur oberen linken Ecke des Steuerelementfensters.

Hinweise

Wenn dieses Ereignis als benutzerdefiniertes Ereignis definiert ist, bestimmen Sie, wann das Ereignis ausgelöst wird.

Damit ein MouseUp-Ereignis automatisch ausgelöst wird, muss die Ereigniszuordnung des Steuerelements ein Stock MouseUp-Ereignis definiert haben.

COleControl::FireReadyStateChange

Löst ein Ereignis mit dem aktuellen Wert des zustandsbereiten Steuerelements aus.

void FireReadyStateChange();

Hinweise

Der Zustand "Bereit" kann einen der folgenden Werte aufweisen:

Name Beschreibung
READYSTATE_UNINITIALIZED Standardinitialisierungszustand
READYSTATE_LOADING Das Steuerelement lädt derzeit seine Eigenschaften.
READYSTATE_LOADED Steuerelement wurde initialisiert
READYSTATE_INTERACTIVE Das Steuerelement verfügt über genügend Daten, um interaktiv zu sein, aber noch nicht alle asynchronen Daten werden geladen.
READYSTATE_COMPLETE Steuerelement hat alle Daten

Verwenden Sie GetReadyState , um die aktuelle Bereitschaft des Steuerelements zu ermitteln.

InternalSetReadyState ändert den bereiten Zustand in den angegebenen Wert und ruft dann auf FireReadyStateChange.

COleControl::GetActivationPolicy

Ändert das Standardaktivierungsverhalten eines Steuerelements, das die IPointerInactive Schnittstelle unterstützt.

virtual DWORD GetActivationPolicy();

Rückgabewert

Eine Kombination von Flags aus der POINTERINACTIVE-Aufzählung. Mögliche Kennzeichen sind:

Name Beschreibung
POINTERINACTIVE_ACTIVATEONENTRY Das Objekt sollte aktiviert werden, wenn die Maus während eines Mausbewegungsvorgangs eingeht.
POINTERINACTIVE_DEACTIVATEONLEAVE Das Objekt sollte deaktiviert werden, wenn die Maus das Objekt während eines Mausbewegungsvorgangs verlässt.
POINTERINACTIVE_ACTIVATEONDRAG Das Objekt sollte aktiviert werden, wenn die Maus während eines Zieh- und Ablagevorgangs über sie gezogen wird.

Hinweise

Wenn die IPointerInactive Schnittstelle aktiviert ist, delegiert der Container WM_SETCURSOR und WM_MOUSEMOVE Nachrichten an die Schnittstelle. COleControlDie Implementierung dieser Schnittstelle sendet diese Nachrichten über die Nachrichtenzuordnung Ihres Steuerelements, nachdem sie die Mauskoordinaten entsprechend angepasst haben.

Wenn der Container eine WM_SETCURSOR oder WM_MOUSEMOVE Nachricht mit dem Mauszeiger über ein inaktives Objekt IPointerInactiveempfängt, sollte er die Schnittstelle aufrufen GetActivationPolicy und Flags aus der POINTERINACTIVE-Aufzählung zurückgeben.

Sie können diese Nachrichten wie normale Fensternachrichten verarbeiten, indem Sie die entsprechenden Einträge zur Nachrichtenzuordnung hinzufügen. Vermeiden Sie in Den Handlern die Verwendung der m_hWnd Membervariable (oder aller Memberfunktionen, die sie verwenden), ohne zuerst zu überprüfen, ob der Wert ungleich NULL ist.

Jedes Objekt, das mehr als den Mauscursor festlegen und/oder ein Mausbewegungsereignis auslösen soll, z. B. spezielle visuelles Feedback geben, sollte das POINTERINACTIVE_ACTIVATEONENTRY Flag zurückgeben und das Feedback nur zeichnen, wenn es aktiv ist. Wenn das Objekt dieses Flag zurückgibt, sollte der Container es sofort aktivieren und dann dieselbe Nachricht weiterleiten, an die der Aufruf GetActivationPolicyausgelöst wurde.

Wenn sowohl die POINTERINACTIVE_ACTIVATEONENTRY- als auch POINTERINACTIVE_DEACTIVATEONLEAVE-Flags zurückgegeben werden, wird das Objekt nur aktiviert, wenn die Maus über das Objekt liegt. Wenn nur das POINTERINACTIVE_ACTIVATEONENTRY Flag zurückgegeben wird, wird das Objekt nur einmal aktiviert, wenn die Maus das Objekt zum ersten Mal eingibt.

Möglicherweise möchten Sie auch, dass ein inaktives Steuerelement das Ziel eines OLE-Drag-and-Drop-Vorgangs ist. Dies erfordert die Aktivierung des Steuerelements im Moment, in dem der Benutzer ein Objekt darüber zieht, sodass das Fenster des Steuerelements als Drop-Ziel registriert werden kann. Um die Aktivierung während eines Ziehens zu verursachen, geben Sie das POINTERINACTIVE_ACTIVATEONDRAG Flag zurück:

DWORD CMyAxCtrl::GetActivationPolicy()
{
   return POINTERINACTIVE_ACTIVATEONDRAG;
}

Die übermittelten GetActivationPolicy Informationen sollten nicht von einem Container zwischengespeichert werden. Stattdessen sollte diese Methode jedes Mal aufgerufen werden, wenn die Maus ein inaktives Objekt eingibt.

Wenn ein inaktives Objekt nicht anfordert, beim Betreten der Maus aktiviert zu werden, sollte sein Container nachfolgende WM_SETCURSOR Nachrichten an dieses Objekt senden, indem OnInactiveSetCursor aufgerufen wird, solange der Mauszeiger über dem Objekt bleibt.

Das Aktivieren der Schnittstelle bedeutet in der IPointerInactive Regel, dass das Steuerelement jederzeit Mausnachrichten verarbeiten kann. Um dieses Verhalten in einem Container zu erhalten, der die IPointerInactive Schnittstelle nicht unterstützt, müssen Sie ihr Steuerelement immer aktiviert lassen, wenn es sichtbar ist, was bedeutet, dass das Steuerelement die OLEMISC_ACTIVATEWHENVISIBLE Kennzeichnung unter den verschiedenen Flags aufweisen sollte. Um jedoch zu verhindern, dass dieses Flag in einem Container wirksam wird, der unterstützt IPointerInactivewird, können Sie auch das OLEMISC_IGNOREACTIVATEWHENVISIBLE Flag angeben:

static const DWORD BASED_CODE _dwMyOleMisc =
    OLEMISC_ACTIVATEWHENVISIBLE |
    OLEMISC_IGNOREACTIVATEWHENVISIBLE |
    OLEMISC_SETCLIENTSITEFIRST |
    OLEMISC_INSIDEOUT |
    OLEMISC_CANTLINKINSIDE |
    OLEMISC_RECOMPOSEONRESIZE;

COleControl::GetAmbientProperty

Ruft den Wert einer Umgebungseigenschaft des Containers ab.

BOOL GetAmbientProperty(
    DISPID dispid,
    VARTYPE vtProp,
    void* pvProp);

Parameter

dwDispid
Die Verteiler-ID der gewünschten Umgebungseigenschaft.

vtProp
Ein Variant-Typtag, das den Typ des Werts angibt, der in pvProp zurückgegeben werden soll.

pvProp
Ein Zeiger auf die Adresse der Variablen, die den Eigenschaftswert oder Rückgabewert empfängt. Der tatsächliche Typ dieses Zeigers muss mit dem von vtProp angegebenen Typ übereinstimmen.

vtProp Typ von pvProp
VT_BOOL BOOL*
VT_BSTR CString*
VT_I2 short*
VT_I4 long*
VT_R4 float*
VT_R8 double*
VT_CY CY*
VT_COLOR OLE_COLOR*
VT_DISPATCH LPDISPATCH*
VT_FONT LPFONTDISP*

Rückgabewert

Nonzero, wenn die Umgebungseigenschaft unterstützt wird; andernfalls 0.

Hinweise

Wenn Sie GetAmbientProperty die Ambient DisplayName- und ScaleUnits-Eigenschaften abrufen, legen Sie vtProp auf VT_BSTR und pvProp fest.CString* Wenn Sie die Ambient Font-Eigenschaft abrufen, legen Sie vtProp auf VT_FONT und pvProp auf LPFONTDISP*fest.

Beachten Sie, dass Funktionen bereits für allgemeine Umgebungseigenschaften wie AmbientBackColor und AmbientFont bereitgestellt wurden.

COleControl::GetAppearance

Implementiert die Get-Funktion der Aktiendarstellungseigenschaft Ihres Steuerelements.

short GetAppearance ();

Rückgabewert

Der Rückgabewert gibt die aktuelle Darstellungseinstellung als short (VT_I2)-Wert an, wenn dies erfolgreich ist. Dieser Wert ist null, wenn die Darstellung des Steuerelements flach und 1 ist, wenn die Darstellung des Steuerelements 3D ist.

COleControl::GetBackColor

Implementiert die Get-Funktion der BackColor-Eigenschaft Ihres Steuerelements.

OLE_COLOR GetBackColor();

Rückgabewert

Der Rückgabewert gibt bei erfolgreicher Ausführung die aktuelle Hintergrundfarbe als OLE_COLOR Wert an. Dieser Wert kann mit einem Aufruf von TranslateColor"COLORREF" in einen COLORREF-Wert übersetzt werden.

COleControl::GetBorderStyle

Implementiert die Get-Funktion der BorderStyle-Eigenschaft Ihres Steuerelements.

short GetBorderStyle();

Rückgabewert

1, wenn das Steuerelement einen normalen Rahmen hat; 0, wenn das Steuerelement keinen Rahmen hat.

COleControl::GetCapture

Bestimmt, ob das COleControl Objekt über die Mauserfassung verfügt.

CWnd* GetCapture();

Rückgabewert

Wenn das Steuerelement aktiviert und fensterlos ist, wird zurückgegeben this , ob das Steuerelement derzeit über die Mauserfassung verfügt (wie durch den Container des Steuerelements bestimmt), oder NULL, wenn es nicht über die Erfassung verfügt.

Gibt andernfalls das CWnd Objekt zurück, das über die Mauserfassung verfügt (identisch mit CWnd::GetCapture).

Hinweise

Ein aktiviertes fensterloses Steuerelement empfängt die Mausaufnahme, wenn SetCapture aufgerufen wird.

COleControl::GetClassID

Vom Framework aufgerufen, um die OLE-Klassen-ID des Steuerelements abzurufen.

virtual HRESULT GetClassID(LPCLSID pclsid) = 0;

Parameter

pclsid
Zeigen Sie auf den Speicherort der Klassen-ID.

Rückgabewert

Nonzero, wenn der Anruf nicht erfolgreich war; andernfalls 0.

Hinweise

Wird in der Regel vom IMPLEMENT_OLECREATE_EX implementiert.

COleControl::GetClientOffset

Ruft den Unterschied zwischen der oberen linken Ecke des rechteckigen Bereichs des Steuerelements und der oberen linken Ecke des Clientbereichs ab.

virtual void GetClientOffset(long* pdxOffset, long* pdyOffset) const;

Parameter

pdxOffset
Zeigen Sie auf den horizontalen Offset des Clientbereichs des OLE-Steuerelements.

pdyOffset
Zeigen Sie auf den vertikalen Offset des Clientbereichs des OLE-Steuerelements.

Hinweise

Das OLE-Steuerelement verfügt über einen rechteckigen Bereich innerhalb des Containers. Der Clientbereich des Steuerelements ist der Steuerelementbereich mit Ausnahme von Rahmen und Bildlaufleisten. Der durch den Offset abgerufene GetClientOffset Abstand ist der Unterschied zwischen der oberen linken Ecke des rechteckigen Bereichs des Steuerelements und der oberen linken Ecke des Clientbereichs. Wenn ihr Steuerelement andere Nicht-Client-Elemente als die Standardrahmen und Bildlaufleisten enthält, überschreiben Sie diese Memberfunktion, um den Offset anzugeben.

COleControl::GetClientRect

Ruft die Größe des Clientbereichs des Steuerelements ab.

virtual void GetClientRect(LPRECT lpRect) const;

Parameter

lpRect
Zeigen Sie auf eine RECT Struktur, die die Abmessungen des Clientbereichs des fensterlosen Steuerelements enthält. Das heißt, die Größe des Steuerelements minus Fensterrahmen, Frames, Bildlaufleisten usw. Der lpRect-Parameter gibt die Größe des Clientrechtecks des Steuerelements und nicht seine Position an.

COleControl::GetClientSite

Fragt ein Objekt für den Zeiger auf seinen aktuellen Clientstandort innerhalb des Containers ab.

LPOLECLIENTSITE GetClientSite();

Rückgabewert

Ein Zeiger auf den aktuellen Clientstandort des Steuerelements in seinem Container.

Hinweise

Der zurückgegebene Zeiger verweist auf eine Instanz von IOleClientSite. Die IOleClientSite schnittstelle, die von Containern implementiert wird, ist die Ansicht des Objekts des Kontexts: wo sie im Dokument verankert ist, wo sie den Speicher, die Benutzeroberfläche und andere Ressourcen abruft.

COleControl::GetControlFlags

Ruft die Steuerelementkennzeichnungseinstellungen ab.

virtual DWORD GetControlFlags();

Rückgabewert

Eine ORed-Kombination der Flags in der ControlFlags-Aufzählung:

enum ControlFlags {
    fastBeginPaint = 0x0001,
    clipPaintDC = 0x0002,
    pointerInactive = 0x0004,
    noFlickerActivate = 0x0008,
    windowlessActivate = 0x0010,
    canOptimizeDraw = 0x0020,
    };

Hinweise

Gibt standardmäßig GetControlFlags zurück fastBeginPaint | clipPaintDC.

Name Beschreibung
fastBeginPaint Wenn festgelegt, wird anstelle der BeginPaint-API eine auf OLE-Steuerelemente zugeschnittene Begin Paint-Funktion verwendet (standardmäßig festgelegt).
clipPaintDC Wenn nicht festgelegt, deaktiviert der Anruf IntersectClipRect von COleControl und erhält einen kleinen Geschwindigkeitsvorteil. Wenn Sie die fensterlose Aktivierung verwenden, hat das Flag keine Auswirkung.
pointerInactive Wenn festgelegt, stellt die Mausinteraktion bereit, während ihr Steuerelement inaktiv ist, indem COleControldie Implementierung der IPointerInactive Schnittstelle aktiviert wird, die standardmäßig deaktiviert ist.
noFlickerActivate Wenn festgelegt, werden zusätzliche Zeichnungsvorgänge und die begleitende visuelle Flimmerung entfernt. Wird verwendet, wenn sich das Steuerelement in den inaktiven und aktiven Zuständen identisch zeichnet. Wenn Sie die fensterlose Aktivierung verwenden, hat das Flag keine Auswirkung.
windowlessActivate Wenn festgelegt, gibt an, dass Ihr Steuerelement die fensterlose Aktivierung verwendet.
canOptimizeDraw Wenn festgelegt, gibt an, dass das Steuerelement eine optimierte Zeichnung ausführt, wenn der Container es unterstützt.

Weitere Informationen GetControlFlags und andere Optimierungen von OLE-Steuerelementen finden Sie unter ActiveX-Steuerelemente: Optimierung.

COleControl::GetControlSize

Ruft die Größe des OLE-Steuerelementfensters ab.

void GetControlSize(
    int* pcx,
    int* pcy);

Parameter

Pcx
Gibt die Breite des Steuerelements in Pixeln an.

pcy
Gibt die Höhe des Steuerelements in Pixel an.

Hinweise

Beachten Sie, dass alle Koordinaten für Steuerelementfenster relativ zur oberen linken Ecke des Steuerelements sind.

COleControl::GetDC

Stellt ein fensterloses Objekt bereit, um einen Bildschirmkontext (oder kompatiblen) Gerätekontext aus dem Container abzurufen.

CDC* GetDC(
    LPCRECT lprcRect = NULL,
    DWORD dwFlags = OLEDC_PAINTBKGND);

Parameter

lprcRect
Ein Zeiger auf das Rechteck, das das fensterlose Steuerelement neu zeichnen möchte, in Clientkoordinaten des Steuerelements. NULL bedeutet den Umfang des vollständigen Objekts.

dwFlags
Zeichnungsattribute des Gerätekontexts. Folgende Optionen stehen zur Auswahl:

  • OLEDC_NODRAW Gibt an, dass das Objekt den Gerätekontext nicht zum Ausführen einer Zeichnung verwendet, sondern lediglich zum Abrufen von Informationen über das Anzeigegerät. Der Container sollte einfach den DC des Fensters ohne weitere Verarbeitung übergeben.

  • OLEDC_PAINTBKGND Fordert an, dass der Container den Hintergrund vor dem Zurückgeben des DC zeichnet. Ein Objekt sollte dieses Flag verwenden, wenn ein DC zum Erneuten Abraen eines Bereichs mit transparentem Hintergrund angefordert wird.

  • OLEDC_OFFSCREEN informiert den Container, dass das Objekt in einer Offscreen-Bitmap gerendert werden soll, die dann auf den Bildschirm kopiert werden soll. Ein Objekt sollte dieses Kennzeichen verwenden, wenn der Zeichnungsvorgang, den es gerade ausführt, eine Menge Flacker generiert. Der Container ist kostenlos, diese Anforderung zu berücksichtigen oder nicht. Wenn dieses Flag jedoch nicht festgelegt ist, muss der Container einen Bildschirm-DC zurückhändigen. Auf diese Weise können Objekte direkte Bildschirmvorgänge ausführen, z. B. das Anzeigen einer Auswahl (über einen XOR-Vorgang ).

Rückgabewert

Zeigen Sie bei erfolgreicher Ausführung auf den Anzeigegerätekontext für den Containerclientbereich CWnd . Andernfalls ist der Rückgabewert NULL. Der Anzeigegerätekontext kann in nachfolgenden GDI-Funktionen verwendet werden, um im Clientbereich des Containerfensters zu zeichnen.

Hinweise

Die ReleaseDC-Memberfunktion muss aufgerufen werden, um den Kontext nach dem Zeichnen freizugeben. Beim Aufrufen GetDCübergeben Objekte das Rechteck, in das sie in ihre eigenen Clientkoordinaten zeichnen möchten. GetDC übersetzt diese in Koordinaten des Containerclientbereichs. Das Objekt sollte kein gewünschtes Zeichnungsrechteck anfordern, das größer als sein eigenes Clientbereichsrechteck ist, dessen Größe mit GetClientRect abgerufen werden kann. Dadurch wird verhindert, dass Objekte versehentlich zeichnen, wo sie nicht vorgesehen sind.

COleControl::GetEnabled

Implementiert die Get-Funktion der Aktiviert-Eigenschaft Ihres Steuerelements.

BOOL GetEnabled();

Rückgabewert

Nonzero, wenn das Steuerelement aktiviert ist; andernfalls 0.

COleControl::GetExtendedControl

Ruft einen Zeiger auf ein Objekt ab, Standard vom Container enthalten ist, der das Steuerelement mit einer erweiterten Gruppe von Eigenschaften darstellt.

LPDISPATCH GetExtendedControl();

Rückgabewert

Ein Zeiger auf das erweiterte Steuerelementobjekt des Containers. Wenn kein Objekt verfügbar ist, ist der Wert NULL.

Dieses Objekt kann über seine IDispatch Schnittstelle bearbeitet werden. Sie können auch andere QueryInterface verfügbare Schnittstellen abrufen, die vom Objekt bereitgestellt werden. Das Objekt ist jedoch nicht erforderlich, um eine bestimmte Gruppe von Schnittstellen zu unterstützen. Beachten Sie, dass die Verwendung der spezifischen Features des erweiterten Steuerelementobjekts eines Containers die Portabilität Ihres Steuerelements auf andere beliebige Container beschränkt.

Hinweise

Die Funktion, die diese Funktion aufruft, ist dafür verantwortlich, den Zeiger freizugeben, wenn er mit dem Objekt fertig ist. Beachten Sie, dass der Container nicht erforderlich ist, um dieses Objekt zu unterstützen.

COleControl::GetFocus

Bestimmt, ob das COleControl Objekt den Fokus hat.

CWnd* GetFocus();

Rückgabewert

Wenn das Steuerelement aktiviert und fensterlos ist, wird zurückgegeben this , ob das Steuerelement derzeit den Tastaturfokus hat (wie durch den Container des Steuerelements bestimmt), oder NULL, wenn es nicht über den Fokus verfügt.

Andernfalls wird das CWnd Objekt zurückgegeben, das den Fokus hat (identisch mit CWnd::GetFocus).

Hinweise

Ein aktiviertes fensterloses Steuerelement erhält den Fokus, wenn SetFocus aufgerufen wird.

COleControl::GetFont

Implementiert die Get-Funktion der Eigenschaft "Stock Font".

LPFONTDISP GetFont();

Rückgabewert

Ein Zeiger auf die Schriftartenversandschnittstelle der Schriftarteneigenschaft des Steuerelements.

Hinweise

Beachten Sie, dass der Aufrufer das Objekt freigeben muss, wenn er fertig ist. Verwenden Sie InternalGetFont innerhalb der Implementierung des Steuerelements den Zugriff auf das Stock Font-Objekt des Steuerelements. Weitere Informationen zur Verwendung von Schriftarten in Ihrem Steuerelement finden Sie im Artikel ActiveX-Steuerelemente: Verwenden von Schriftarten in einem ActiveX-Steuerelement.

COleControl::GetFontTextMetrics

Misst die Textmetriken für jedes CFontHolder Objekt, das dem Steuerelement gehört.

void GetFontTextMetrics(
    LPTEXTMETRIC lptm,
    CFontHolder& fontHolder);

Parameter

lptm
Zeiger auf eine TEXTMETRIC-Struktur .

fontHolder
Verweis auf ein CFontHolder -Objekt.

Hinweise

Eine solche Schriftart kann mit der COleControl::SelectFontObject-Funktion ausgewählt werden. GetFontTextMetricsInitialisieren Sie die Struktur, auf die TEXTMETRIC lptmverweist, mit gültigen Metrikinformationen über fontHolderdie Schriftart, wenn dies erfolgreich ist, oder füllen Sie die Struktur mit Nullen, wenn dies nicht erfolgreich ist. Sie sollten diese Funktion anstelle von GetTextMetrics beim Zeichnen des Steuerelements verwenden, da Steuerelemente wie jedes eingebettete OLE-Objekt möglicherweise erforderlich sind, um sich selbst in einer Metadatei zu rendern.

Die TEXTMETRIC Struktur für die Standardschriftart wird aktualisiert, wenn die SelectFontObject-Funktion aufgerufen wird. Sie sollten erst aufrufen GetFontTextMetrics , nachdem Sie die Eigenschaft "Stock Font" ausgewählt haben, um sicherzustellen, dass die bereitgestellten Informationen gültig sind.

COleControl::GetForeColor

Implementiert die Get-Funktion der ForeColor-Eigenschaft der Aktie.

OLE_COLOR GetForeColor();

Rückgabewert

Der Rückgabewert gibt bei erfolgreicher Ausführung die aktuelle Vordergrundfarbe als OLE_COLOR Wert an. Dieser Wert kann mit einem Aufruf von TranslateColor"COLORREF" in einen COLORREF-Wert übersetzt werden.

COleControl::GetHwnd

Implementiert die Get-Funktion der Stock hWnd -Eigenschaft.

OLE_HANDLE GetHwnd();

Rückgabewert

Der Fensterziehpunkt des OLE-Steuerelements, falls vorhanden; andernfalls NULL.

COleControl::GetMessageString

Vom Framework aufgerufen, um eine kurze Zeichenfolge zu erhalten, die den Zweck des durch nID identifizierten Menüelements beschreibt.

virtual void GetMessageString(
    UINT nID,
    CString& rMessage) const;

Parameter

Nid
Eine Menüelement-ID.

rMessage
Ein Verweis auf ein CString-Objekt , über das eine Zeichenfolge zurückgegeben wird.

Hinweise

Dies kann verwendet werden, um eine Meldung für die Anzeige in einer Statusleiste abzurufen, während das Menüelement hervorgehoben ist. Die Standardimplementierung versucht, eine durch nID identifizierte Zeichenfolgenressource zu laden.

COleControl::GetNotSupported

Verhindert den Zugriff auf den Eigenschaftswert eines Steuerelements durch den Benutzer.

void GetNotSupported();

Hinweise

Rufen Sie diese Funktion anstelle der Get-Funktion einer Beliebigen Eigenschaft auf, bei der der Abruf der Eigenschaft durch den Benutzer des Steuerelements nicht unterstützt wird. Ein Beispiel wäre eine Eigenschaft, die nur schreibgeschützt ist.

COleControl::GetReadyState

Gibt den Bereitschaftsstatus des Steuerelements zurück.

long GetReadyState();

Rückgabewert

Der Bereitschaftszustand des Steuerelements, einer der folgenden Werte:

Name Beschreibung
READYSTATE_UNINITIALIZED Standardinitialisierungszustand
READYSTATE_LOADING Das Steuerelement lädt derzeit seine Eigenschaften.
READYSTATE_LOADED Steuerelement wurde initialisiert
READYSTATE_INTERACTIVE Das Steuerelement verfügt über genügend Daten, um interaktiv zu sein, aber noch nicht alle asynchronen Daten werden geladen.
READYSTATE_COMPLETE Steuerelement hat alle Daten

Hinweise

Die meisten einfachen Steuerelemente müssen niemals zwischen GELADEN und INTERAKTIV unterscheiden. Steuerelemente, die Datenpfadeigenschaften unterstützen, sind jedoch möglicherweise erst interaktiv, wenn mindestens einige Daten asynchron empfangen werden. Ein Steuerelement sollte so schnell wie möglich interaktiv werden.

COleControl::GetRectInContainer

Ruft die Koordinaten des Rechtecks des Steuerelements relativ zum Container ab, ausgedrückt in Geräteeinheiten.

BOOL GetRectInContainer(LPRECT lpRect);

Parameter

lpRect
Ein Zeiger auf die Rechteckstruktur, in die die Koordinaten des Steuerelements kopiert werden.

Rückgabewert

Nonzero, wenn das Steuerelement aktiv ist; andernfalls 0.

Hinweise

Das Rechteck ist nur gültig, wenn das Steuerelement aktiv ist.

COleControl::GetStockTextMetrics

Misst die Textmetriken für die Eigenschaft "Stock Font" des Steuerelements, die mit der SelectStockFont-Funktion ausgewählt werden kann.

void GetStockTextMetrics(LPTEXTMETRIC lptm);

Parameter

lptm
Ein Zeiger auf eine TEXTMETRIC-Struktur .

Hinweise

Die GetStockTextMetrics Funktion initialisiert die Struktur, auf die TEXTMETRIC lptm verweist, mit gültigen Metrikinformationen, wenn dies erfolgreich ist, oder füllt die Struktur mit Nullen, wenn dies nicht erfolgreich ist. Verwenden Sie diese Funktion anstelle von GetTextMetrics beim Zeichnen des Steuerelements , da Steuerelemente wie jedes eingebettete OLE-Objekt möglicherweise erforderlich sind, um sich selbst in einer Metadatei zu rendern.

Die TEXTMETRIC Struktur für die Standardschriftart wird aktualisiert, wenn die SelectStockFont Funktion aufgerufen wird. Sie sollten diese Funktion erst aufrufen, nachdem Sie die Aktienschriftart ausgewählt haben, um sicherzustellen, dass die bereitgestellten Informationen gültig sind.

COleControl::GetText

Implementiert die Get-Funktion der Eigenschaft "Aktientext" oder "Caption".

BSTR GetText();

Rückgabewert

Der aktuelle Wert der Steuerelementtextzeichenfolge oder eine leere Zeichenfolge, wenn keine Zeichenfolge vorhanden ist.

Hinweis

Weitere Informationen zum BSTR-Datentyp finden Sie unter Datentypen im Abschnitt "Makros und Globals".

Hinweise

Beachten Sie, dass der Aufrufer dieser Funktion die zurückgegebene Zeichenfolge aufrufen SysFreeString muss, um die Ressource freizugeben. Verwenden Sie InternalGetText innerhalb der Implementierung des Steuerelements den Zugriff auf die Aktientext- oder Caption-Eigenschaft des Steuerelements.

COleControl::GetWindowlessDropTarget

Überschreiben GetWindowlessDropTarget , wenn ein fensterloses Steuerelement das Ziel eines OLE-Drag-and-Drop-Vorgangs sein soll.

virtual IDropTarget* GetWindowlessDropTarget();

Rückgabewert

Zeiger auf die Schnittstelle des IDropTarget Objekts. Da es nicht über ein Fenster verfügt, kann ein fensterloses Objekt keine IDropTarget Schnittstelle registrieren. Um jedoch am Ziehen und Ablegen teilzunehmen, kann ein fensterloses Objekt die Schnittstelle weiterhin implementieren und in diesen zurückgeben GetWindowlessDropTarget.

Hinweise

Normalerweise würde dies erfordern, dass das Fenster des Steuerelements als Drop-Ziel registriert wird. Da das Steuerelement jedoch kein eigenes Fenster hat, verwendet der Container sein eigenes Fenster als Drop-Ziel. Das Steuerelement muss lediglich eine Implementierung der IDropTarget Schnittstelle bereitstellen, an die der Container Aufrufe zur entsprechenden Zeit delegieren kann. Beispiel:

IDropTarget *CMyAxCtrl::GetWindowlessDropTarget()
{
   m_xDropTarget.AddRef();
   return &m_xDropTarget;
}

COleControl::InitializeIIDs

Informiert die Basisklasse der IIDs, die das Steuerelement verwendet.

void InitializeIIDs(
    const IID* piidPrimary,
    const IID* piidEvents);

Parameter

piidPrimary
Zeiger auf die Schnittstellen-ID der primären Verteilerschnittstelle des Steuerelements.

piidEvents
Zeigen Sie auf die Schnittstellen-ID der Ereignisschnittstelle des Steuerelements.

Hinweise

Rufen Sie diese Funktion im Konstruktor des Steuerelements auf, um die Basisklasse der Schnittstellen-IDs zu informieren, die Ihr Steuerelement verwendet.

COleControl::InternalGetFont

Greift auf die Eigenschaft "Stock Font" Ihres Steuerelements zu.

CFontHolder& InternalGetFont();

Rückgabewert

Ein Verweis auf ein CFontHolder -Objekt, das das Objekt "Stock Font" enthält.

COleControl::InternalGetText

Greift auf die Eigenschaft "Aktientext" oder "Caption" Ihres Steuerelements zu.

const CString& InternalGetText();

Rückgabewert

Ein Verweis auf die Steuerelementtextzeichenfolge.

COleControl::InternalSetReadyState

Legt den Bereitschaftsstatus des Steuerelements fest.

void InternalSetReadyState(long lNewReadyState);

Parameter

lNewReadyState
Der Bereitschaftsstatus, der für das Steuerelement festgelegt werden soll, einer der folgenden Werte:

Name Beschreibung
READYSTATE_UNINITIALIZED Standardinitialisierungszustand
READYSTATE_LOADING Das Steuerelement lädt derzeit seine Eigenschaften.
READYSTATE_LOADED Steuerelement wurde initialisiert
READYSTATE_INTERACTIVE Das Steuerelement verfügt über genügend Daten, um interaktiv zu sein, aber noch nicht alle asynchronen Daten werden geladen.
READYSTATE_COMPLETE Steuerelement hat alle Daten

Hinweise

Die meisten einfachen Steuerelemente müssen niemals zwischen GELADEN und INTERAKTIV unterscheiden. Steuerelemente, die Datenpfadeigenschaften unterstützen, sind jedoch möglicherweise erst interaktiv, wenn mindestens einige Daten asynchron empfangen werden. Ein Steuerelement sollte so schnell wie möglich interaktiv werden.

COleControl::InvalidateControl

Erzwingt das Neuzeichnen des Steuerelements selbst.

void InvalidateControl(
    LPCRECT lpRect = NULL,
    BOOL bErase = TRUE);

Parameter

lpRect
Ein Zeiger auf den Bereich des Steuerelements, der ungültig werden soll.

bErase
Gibt an, ob der Hintergrund innerhalb des Aktualisierungsbereichs gelöscht werden soll, wenn der Aktualisierungsbereich verarbeitet wird.

Hinweise

Wenn lpRect einen NULL-Wert aufweist, wird das gesamte Steuerelement neu gezeichnet. Wenn lpRect nicht NULL ist, gibt dies den Teil des Rechtecks des Steuerelements an, der ungültig werden soll. In Fällen, in denen das Steuerelement kein Fenster aufweist oder derzeit nicht aktiv ist, wird das Rechteck ignoriert, und ein Aufruf der IAdviseSink::OnViewChange-Memberfunktion der Clientwebsite wird ausgeführt. Verwenden Sie diese Funktion anstelle von CWnd::InvalidateRect oder InvalidateRect.

COleControl::InvalidateRgn

Ungültig wird der Clientbereich des Containerfensters innerhalb der angegebenen Region.

void InvalidateRgn(CRgn* pRgn, BOOL bErase = TRUE);

Parameter

pRgn
Ein Zeiger auf ein CRgn-Objekt , das den Anzeigebereich des OLE-Objekts identifiziert, das ungültig werden soll, in Clientkoordinaten des enthaltenden Fensters. Wenn dieser Parameter NULL ist, ist der Umfang das gesamte Objekt.

bErase
Gibt an, ob der Hintergrund innerhalb des ungültigen Bereichs gelöscht werden soll. Wenn TRUE, wird der Hintergrund gelöscht. Wenn FALSE, wird der Hintergrund unverändert Standard.

Hinweise

Dies kann verwendet werden, um fensterlose Steuerelemente im Container neu zu zeichnen. Der ungültige Bereich wird zusammen mit allen anderen Bereichen im Aktualisierungsbereich zum Zeichnen markiert, wenn die nächste WM_PAINT Nachricht gesendet wird.

Wenn bErase für einen Teil des Aktualisierungsbereichs WAHR ist, wird der Hintergrund in der gesamten Region, nicht nur im angegebenen Teil, gelöscht.

COleControl::IsConvertingVBX

Ermöglicht das spezialisierte Laden eines OLE-Steuerelements.

BOOL IsConvertingVBX();

Rückgabewert

Nonzero, wenn das Steuerelement konvertiert wird; andernfalls 0.

Hinweise

Beim Konvertieren eines Formulars, das VBX-Steuerelemente verwendet, die OLE-Steuerelemente verwenden, ist möglicherweise ein spezieller Ladecode für die OLE-Steuerelemente erforderlich. Wenn Sie z. B. eine Instanz Ihres OLE-Steuerelements laden, haben Sie möglicherweise einen Aufruf von PX_Font in Ihrem DoPropExchange:

PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);

VBX-Steuerelemente haben jedoch kein Font-Objekt; Jede Schriftarteigenschaft wurde einzeln gespeichert. In diesem Fall würden Sie verwenden IsConvertingVBX , um zwischen diesen beiden Fällen zu unterscheiden:

if (!IsConvertingVBX())
{
   PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);
}
else
{
   PX_String(pPX, _T("FontName"), tempString, DefaultName);
   m_pMyFont->m_pFont->put_Name(tempString.AllocSysString());
   PX_Bool(pPX, _T("FontUnderline"), tempBool, DefaultValue);
   m_pMyFont->m_pFont->put_Underline(tempBool);
}

Ein weiterer Fall wäre, wenn Ihr VBX-Steuerelement proprietäre Binärdaten (in seinem VBM_SAVEPROPERTY Nachrichtenhandler) gespeichert hat, und Das OLE-Steuerelement speichert seine Binärdaten in einem anderen Format. Wenn Ihr OLE-Steuerelement abwärtskompatibel mit dem VBX-Steuerelement sein soll, können Sie sowohl die alten als auch die neuen Formate mithilfe der IsConvertingVBX Funktion lesen, indem Sie unterscheiden, ob das VBX-Steuerelement oder das OLE-Steuerelement geladen wurde.

In der Funktion Ihres Steuerelements DoPropExchange können Sie nach dieser Bedingung suchen und wenn true, Ladencode ausführen, der für diese Konvertierung spezifisch ist (z. B. die vorherigen Beispiele). Wenn das Steuerelement nicht konvertiert wird, können Sie normalen Ladecode ausführen. Diese Möglichkeit gilt nur für Steuerelemente, die von VBX-Gegenstücken konvertiert werden.

COleControl::IsInvokeAllowed

Aktiviert den Aufruf der Automatisierungsmethode.

BOOL IsInvokeAllowed(DISPID dispid);

Rückgabewert

Nonzero, wenn das Steuerelement initialisiert wurde; andernfalls 0.

Hinweise

Die Implementierung von Aufrufen IsInvokeAllowed des IDispatch::Invoke Frameworks, um festzustellen, ob eine bestimmte Funktion (identifiziert durchdispid) aufgerufen werden kann. Das Standardverhalten für ein OLE-Steuerelement besteht darin, automatisierungstechnische Methoden nur dann aufzurufen, wenn das Steuerelement initialisiert wurde. IsInvokeAllowed ist jedoch eine virtuelle Funktion und kann bei Bedarf überschrieben werden (z. B. wenn das Steuerelement als Automatisierungsserver verwendet wird).

COleControl::IsModified

Bestimmt, ob der Zustand des Steuerelements geändert wurde.

BOOL IsModified();

Rückgabewert

Nonzero, wenn der Zustand des Steuerelements seit dem letzten Speichern geändert wurde; andernfalls 0.

Hinweise

Der Status eines Steuerelements wird geändert, wenn ein Eigenschaftswert geändert wird.

COleControl::IsOptimizedDraw

Bestimmt, ob der Container eine optimierte Zeichnung für den aktuellen Zeichnungsvorgang unterstützt.

BOOL IsOptimizedDraw();

Rückgabewert

TRUE, wenn der Container eine optimierte Zeichnung für den aktuellen Zeichnungsvorgang unterstützt; andernfalls FALSE.

Hinweise

Wenn eine optimierte Zeichnung unterstützt wird, muss das Steuerelement keine alten Objekte (Stifte, Pinsel, Schriftarten usw.) im Gerätekontext auswählen, wenn die Zeichnung abgeschlossen ist.

COleControl::IsSubclassedControl

Wird vom Framework aufgerufen, um zu ermitteln, ob das Steuerelement ein Windows-Steuerelement unterklassiert.

virtual BOOL IsSubclassedControl();

Rückgabewert

Nonzero, wenn das Steuerelement unterklassigt ist; andernfalls 0.

Hinweise

Sie müssen diese Funktion überschreiben und TRUE zurückgeben, wenn Ihr OLE-Steuerelement ein Windows-Steuerelement unterklassiert.

COleControl::Load

Setzt alle vorherigen Daten zurück, die asynchron geladen wurden, und initiiert ein neues Laden der asynchronen Eigenschaft des Steuerelements.

void Load(LPCTSTR strNewPath, CDataPathProperty& prop);

Parameter

strNewPath
Ein Zeiger auf eine Zeichenfolge, die den Pfad enthält, der auf die absolute Position der asynchronen Steuerelementeigenschaft verweist.

Prop
Ein CDataPathProperty-Objekt , das eine asynchrone Steuerelementeigenschaft implementiert.

COleControl::LockInPlaceActive

Verhindert, dass der Container Das Steuerelement deaktiviert.

BOOL LockInPlaceActive(BOOL bLock);

Parameter

Block
TRUE, wenn der aktive Zustand des Steuerelements gesperrt werden soll; FALSE, wenn es entsperrt werden soll.

Rückgabewert

Nonzero, wenn die Sperre erfolgreich war; andernfalls 0.

Hinweise

Beachten Sie, dass jede Sperrung des Steuerelements bei Abschluss mit einer Entsperrung des Steuerelements gekoppelt werden muss. Sie sollten das Steuerelement nur für kurze Zeiträume sperren, z. B. beim Auslösen eines Ereignisses.

COleControl::OnAmbientPropertyChange

Wird vom Framework aufgerufen, wenn eine Umgebungseigenschaft des Containers den Wert geändert hat.

virtual void OnAmbientPropertyChange(DISPID dispid);

Parameter

Dispid
Die Verteiler-ID der Umgebungseigenschaft, die geändert wurde, oder DISPID_UNKNOWN, wenn mehrere Eigenschaften geändert wurden.

COleControl::OnAppearanceChanged

Wird vom Framework aufgerufen, wenn sich der Wert der Aktiendarstellungseigenschaft geändert hat.

virtual void OnAppearanceChanged ();

Hinweise

Überschreiben Sie diese Funktion, wenn Sie nach änderungen dieser Eigenschaft eine Benachrichtigung wünschen. Die standardmäßigen Implementierungsaufrufe InvalidateControl.

COleControl::OnBackColorChanged

Wird vom Framework aufgerufen, wenn sich der Aktien-BackColor-Eigenschaftswert geändert hat.

virtual void OnBackColorChanged();

Hinweise

Überschreiben Sie diese Funktion, wenn Sie nach änderungen dieser Eigenschaft eine Benachrichtigung wünschen. Die standardmäßigen Implementierungsaufrufe InvalidateControl.

COleControl::OnBorderStyleChanged

Wird vom Framework aufgerufen, wenn sich der Aktien-BorderStyle-Eigenschaftswert geändert hat.

virtual void OnBorderStyleChanged();

Hinweise

Die standardmäßigen Implementierungsaufrufe InvalidateControl.

Überschreiben Sie diese Funktion, wenn Sie nach änderungen dieser Eigenschaft eine Benachrichtigung wünschen.

COleControl::OnClick

Wird vom Framework aufgerufen, wenn auf eine Maustaste geklickt wurde oder die DoClick-Aktienmethode aufgerufen wurde.

virtual void OnClick(USHORT iButton);

Parameter

Ibutton
Index einer Maustaste. Kann einen der folgenden Werte aufweisen:

  • LEFT_BUTTON Die linke Maustaste wurde geklickt.

  • MIDDLE_BUTTON Die mittlere Maustaste wurde geklickt.

  • RIGHT_BUTTON Die rechte Maustaste wurde geklickt.

Hinweise

Die standardmäßigen Implementierungsaufrufe COleControl::FireClick.

Überschreiben Sie diese Memberfunktion, um die Standardbehandlung zu ändern oder zu erweitern.

COleControl::OnClose

Wird vom Framework aufgerufen, wenn der Container die Funktion des Steuerelements IOleControl::Close aufgerufen hat.

virtual void OnClose(DWORD dwSaveOption);

Parameter

dwSaveOption
Flag, das angibt, ob das Objekt vor dem Laden gespeichert werden soll. Gültige Werte sind:

  • OLECLOSE_SAVEIFDIRTY

  • OLECLOSE_NOSAVE

  • OLECLOSE_PROMPTSAVE

Hinweise

Speichert das Steuerelementobjekt standardmäßig, OnClose wenn es geändert wurde und dwSaveOption entweder OLECLOSE_SAVEIFDIRTY oder OLECLOSE_PROMPTSAVE ist.

COleControl::OnDoVerb

Wird vom Framework aufgerufen, wenn der Container die IOleObject::DoVerb Memberfunktion aufruft.

virtual BOOL OnDoVerb(
    LONG iVerb,
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Parameter

iVerb
Der Index des zu aufrufenden Steuerelementverbs.

lpMsg
Ein Zeiger auf die Windows-Nachricht, die dazu führte, dass das Verb aufgerufen wurde.

hWndParent
Der Ziehpunkt für das übergeordnete Fenster des Steuerelements. Wenn die Ausführung des Verbs ein Fenster (oder Fenster) erstellt, sollte hWndParent als übergeordnetes Element verwendet werden.

lpRect
Ein Zeiger auf eine RECT-Struktur, in die die Koordinaten des Steuerelements relativ zum Container kopiert werden.

Rückgabewert

Nonzero, wenn der Anruf erfolgreich war; andernfalls 0.

Hinweise

Die Standardimplementierung verwendet die ON_OLEVERB und ON_STDOLEVERB Nachrichtenzuordnungseinträge, um die richtige Funktion zu bestimmen, die aufgerufen werden soll.

Überschreiben Sie diese Funktion, um die Standardbehandlung des Verbs zu ändern.

COleControl::OnDraw

Wird vom Framework aufgerufen, um das OLE-Steuerelement im angegebenen Umgebenden Rechteck mithilfe des angegebenen Gerätekontexts zu zeichnen.

virtual void OnDraw(
    CDC* pDC,
    const CRect& rcBounds,
    const CRect& rcInvalid);

Parameter

pDC
Der Gerätekontext, in dem die Zeichnung auftritt.

rcBounds
Der rechteckige Bereich des Steuerelements, einschließlich des Rahmens.

rcInvalid
Der rechteckige Bereich des Steuerelements, das ungültig ist.

Hinweise

OnDraw wird in der Regel für die Bildschirmanzeige aufgerufen und übergibt einen Bildschirmgerätekontext als pDC. Der rcBounds-Parameter identifiziert das Rechteck im Zielgerätekontext (relativ zum aktuellen Zuordnungsmodus ). Der rcInvalid-Parameter ist das tatsächliche Rechteck, das ungültig ist. In einigen Fällen ist dies ein kleinerer Bereich als rcBounds.

COleControl::OnDrawMetafile

Wird vom Framework aufgerufen, um das OLE-Steuerelement im angegebenen Umgebenden Rechteck mithilfe des angegebenen Metadateigerätekontexts zu zeichnen.

virtual void OnDrawMetafile(
    CDC* pDC,
    const CRect& rcBounds);

Parameter

pDC
Der Gerätekontext, in dem die Zeichnung auftritt.

rcBounds
Der rechteckige Bereich des Steuerelements, einschließlich des Rahmens.

Hinweise

Die Standardimplementierung ruft die OnDraw-Funktion auf.

COleControl::OnEdit

Bewirkt, dass das Steuerelement aktiviert wird.

virtual BOOL OnEdit(
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Parameter

lpMsg
Ein Zeiger auf die Windows-Nachricht, die das Verb aufgerufen hat.

hWndParent
Ein Handle für das übergeordnete Fenster des Steuerelements.

lpRect
Ein Zeiger auf das Rechteck, das vom Steuerelement im Container verwendet wird.

Rückgabewert

Nonzero, wenn der Anruf erfolgreich ist; andernfalls 0.

Hinweise

Dies hat dieselbe Auswirkung wie das Aufrufen des OLEIVERB_UIACTIVATE Verbs des Steuerelements.

Diese Funktion wird in der Regel als Handlerfunktion für einen ON_OLEVERB Nachrichtenzuordnungseintrag verwendet. Dadurch wird ein Verb "Bearbeiten" im Menü "Objekt" des Steuerelements verfügbar. Beispiel:

ON_OLEVERB(AFX_IDS_VERB_EDIT, OnEdit)

COleControl::OnEnabledChanged

Wird vom Framework aufgerufen, wenn sich der Aktienwert der Enabled-Eigenschaft geändert hat.

virtual void OnEnabledChanged();

Hinweise

Überschreiben Sie diese Funktion, wenn Sie nach änderungen dieser Eigenschaft eine Benachrichtigung wünschen. Die Standardimplementierung ruft InvalidateControl auf.

COleControl::OnEnumVerbs

Wird vom Framework aufgerufen, wenn der Container die IOleObject::EnumVerbs Memberfunktion aufruft.

virtual BOOL OnEnumVerbs(LPENUMOLEVERB* ppenumOleVerb);

Parameter

ppenumOleVerb
Ein Zeiger auf das IEnumOLEVERB Objekt, das die Verben des Steuerelements aufzählt.

Rückgabewert

Nonzero, wenn Verben verfügbar sind; andernfalls 0.

Hinweise

Die Standardimplementierung listet die ON_OLEVERB Einträge in der Nachrichtenzuordnung auf.

Überschreiben Sie diese Funktion, um die Standardweise zum Aufzählen von Verben zu ändern.

COleControl::OnEventAdvise

Wird vom Framework aufgerufen, wenn ein Ereignishandler mit einem OLE-Steuerelement verbunden oder getrennt wird.

virtual void OnEventAdvise(BOOL bAdvise);

Parameter

bAdvise
TRUE gibt an, dass ein Ereignishandler mit dem Steuerelement verbunden wurde. FALSE gibt an, dass ein Ereignishandler vom Steuerelement getrennt wurde.

COleControl::OnFontChanged

Wird vom Framework aufgerufen, wenn sich der Wert der Aktienschriftart-Eigenschaft geändert hat.

virtual void OnFontChanged();

Hinweise

Die standardmäßigen Implementierungsaufrufe COleControl::InvalidateControl. Wenn das Steuerelement ein Windows-Steuerelement unterklassiert, sendet die Standardimplementierung auch eine WM_SETFONT Nachricht an das Fenster des Steuerelements.

Überschreiben Sie diese Funktion, wenn Sie nach änderungen dieser Eigenschaft eine Benachrichtigung wünschen.

Beispiel

void CMyAxCtrl::OnFontChanged()
{
   // Always set it to the container's font
   if (m_MyEdit.m_hWnd != NULL)
   {
      IFontDisp *pFontDisp = NULL;
      IFont *pFont = NULL;
      HRESULT hr;

      // Get the container's FontDisp interface
      pFontDisp = AmbientFont();
      if (pFontDisp)
      {
         hr = pFontDisp->QueryInterface(IID_IFont, (LPVOID*)&pFont);
         if (FAILED(hr))
         {
            pFontDisp->Release();
            return;
         }
      }

      HFONT hFont = NULL;
      if (pFont)
      {
         pFont->get_hFont(&hFont);
         m_MyEdit.SendMessage(WM_SETFONT, (WPARAM)hFont, 0L);
      }

      pFontDisp->Release();
   }

   // Invalidate the control
   m_MyEdit.Invalidate();
   m_MyEdit.UpdateWindow();

   COleControl::OnFontChanged();
}

COleControl::OnForeColorChanged

Wird vom Framework aufgerufen, wenn sich der Aktienwert der ForeColor-Eigenschaft geändert hat.

virtual void OnForeColorChanged();

Hinweise

Die standardmäßigen Implementierungsaufrufe InvalidateControl.

Überschreiben Sie diese Funktion, wenn Sie nach änderungen dieser Eigenschaft eine Benachrichtigung wünschen.

COleControl::OnFreezeEvents

Wird vom Framework nach dem Containeraufruf aufgerufen IOleControl::FreezeEvents.

virtual void OnFreezeEvents(BOOL bFreeze);

Parameter

bFreeze
TRUE, wenn die Ereignisbehandlung des Steuerelements fixiert ist; andernfalls FALSE.

Hinweise

Bei der Standardimplementierung wird keine Aktion ausgeführt.

Überschreiben Sie diese Funktion, wenn Sie ein zusätzliches Verhalten wünschen, wenn die Ereignisbehandlung fixiert oder aufgehoben wird.

COleControl::OnGetColorSet

Wird vom Framework aufgerufen, wenn der Container die IViewObject::GetColorSet Memberfunktion aufruft.

virtual BOOL OnGetColorSet(
    DVTARGETDEVICE* ptd,
    HDC hicTargetDev,
    LPLOGPALETTE* ppColorSet);

Parameter

Ptd
Verweist auf das Zielgerät, für das das Bild gerendert werden soll. Wenn dieser Wert NULL ist, sollte das Bild für ein Standardzielgerät gerendert werden, in der Regel ein Anzeigegerät.

hicTargetDev
Gibt den Informationskontext auf dem Zielgerät an, das durch ptd angegeben wird. Dieser Parameter kann ein Gerätekontext sein, ist aber nicht unbedingt ein Parameter. Wenn ptd NULL ist, sollte hicTargetDev auch NULL sein.

ppColorSet
Ein Zeiger auf die Position, in die der verwendete Farbsatz kopiert werden soll. Wenn die Funktion den Farbsatz nicht zurückgibt, wird NULL zurückgegeben.

Rückgabewert

Nonzero, wenn ein gültiger Farbsatz zurückgegeben wird; andernfalls 0.

Hinweise

Der Container ruft diese Funktion auf, um alle Farben abzurufen, die zum Zeichnen des OLE-Steuerelements erforderlich sind. Der Container kann die farbsätze verwenden, die in Verbindung mit den Farben abgerufen werden, die zum Festlegen der Gesamtfarbpalette erforderlich sind. Die Standardimplementierung gibt FALSE zurück.

Überschreiben Sie diese Funktion, um eine spezielle Verarbeitung dieser Anforderung zu erledigen.

COleControl::OnGetControlInfo

Wird vom Framework aufgerufen, wenn der Container des Steuerelements Informationen über das Steuerelement angefordert hat.

virtual void OnGetControlInfo(LPCONTROLINFO pControlInfo);

Parameter

pControlInfo
Zeiger auf eine CONTROLINFO-Struktur , die ausgefüllt werden soll.

Hinweise

Diese Informationen bestehen in erster Linie aus einer Beschreibung der Mnemonic-Tasten des Steuerelements. Die Standardimplementierung füllt pControlInfo mit Standardinformationen.

Überschreiben Sie diese Funktion, wenn Ihr Steuerelement Mnemonic-Tasten verarbeiten muss.

COleControl::OnGetDisplayString

Wird vom Framework aufgerufen, um eine Zeichenfolge abzurufen, die den aktuellen Wert der durch dispid identifizierten Eigenschaft darstellt.

virtual BOOL OnGetDisplayString(
    DISPID dispid,
    CString& strValue);

Parameter

Dispid
Die Verteiler-ID einer Eigenschaft des Steuerelements.

strValue
Ein Verweis auf ein CString-Objekt , über das eine Zeichenfolge zurückgegeben wird.

Rückgabewert

Nonzero, wenn eine Zeichenfolge in strValue zurückgegeben wurde; andernfalls 0.

Hinweise

Überschreiben Sie diese Funktion, wenn ihr Steuerelement über eine Eigenschaft verfügt, deren Wert nicht direkt in eine Zeichenfolge konvertiert werden kann, und Sie möchten, dass der Wert der Eigenschaft in einem containerbasierten Eigenschaftenbrowser angezeigt wird.

COleControl::OnGetInPlaceMenu

Wird vom Framework aufgerufen, wenn das Steuerelement aktiviert ist, um das Menü abzurufen, das mit dem vorhandenen Menü des Containers zusammengeführt werden soll.

virtual HMENU OnGetInPlaceMenu();

Rückgabewert

Das Handle des Menüs des Steuerelements oder NULL, wenn das Steuerelement keines hat. Die Standardimplementierung gibt NULL zurück.

Hinweise

Weitere Informationen zum Zusammenführen von OLE-Ressourcen finden Sie im Artikel "Menus and Resources (OLE)".

COleControl::OnGetNaturalExtent

Wird vom Framework als Reaktion auf die Anforderung eines IViewObjectEx::GetNaturalExtent Containers aufgerufen.

virtual BOOL OnGetNaturalExtent(
    DWORD dwAspect,
    LONG lindex,
    DVTARGETDEVICE* ptd,
    HDC hicTargetDev,
    DVEXTENTINFO* pExtentInfo,
    LPSIZEL psizel);

Parameter

Dwaspect
Gibt an, wie das Objekt dargestellt werden soll. Darstellungen umfassen Inhalt, ein Symbol, eine Miniaturansicht oder ein gedrucktes Dokument. Gültige Werte stammen aus der Enumeration DVASPECT oder DVASPECT2.

Lindex
Der Teil des Objekts, der von Interesse ist. Derzeit ist nur -1 gültig.

Ptd
Verweist auf die DVTARGETDEVICE-Struktur , die das Zielgerät definiert, für das die Größe des Objekts zurückgegeben werden soll.

hicTargetDev
Gibt den Informationskontext für das Zielgerät an, das durch den ptd-Parameter angegeben wird, aus dem das Objekt Gerätemetriken extrahieren und die Funktionen des Geräts testen kann. Wenn ptd NULL ist, sollte das Objekt den Wert im Parameter "hicTargetDev " ignorieren.

pExtentInfo
Verweist auf die DVEXTENTINFO Struktur, die die Größe von Daten angibt. Die DVEXTENTINFO Struktur lautet:

typedef struct tagExtentInfo
{
    UINT cb;
    DWORD dwExtentMode;
    SIZEL sizelProposed;
}   DVEXTENTINFO;

Das Strukturelement dwExtentMode kann einen von zwei Werten annehmen:

  • DVEXTENT_CONTENT Inquire, wie groß das Steuerelement sein soll, um genau an Inhalte anzupassen (Snap-to-Size)

  • DVEXTENT_INTEGRAL Beim Ändern der Größe übergeben Sie die vorgeschlagene Größe an die Steuerung

Psizel
Verweist auf die größe von Steuerelement zurückgegebenen Daten. Die zurückgegebenen Größendaten werden für alle Dimensionen, die nicht angepasst wurden, auf -1 festgelegt.

Rückgabewert

Nonzero, wenn die Größe erfolgreich zurückgegeben oder angepasst wird; andernfalls 0.

Hinweise

Überschreiben Sie diese Funktion, um die Anzeigegröße des Objekts zurückzugeben, die der vorgeschlagenen Größe und ex Zelt-Modus in der DVEXTENTINFO Struktur am nächsten kommt. Die Standardimplementierung gibt FALSE zurück und nimmt keine Anpassungen an der Größe vor.

COleControl::OnGetPredefinedStrings

Vom Framework aufgerufen, um einen Satz vordefinierter Zeichenfolgen abzurufen, die die möglichen Werte für eine Eigenschaft darstellen.

virtual BOOL OnGetPredefinedStrings(
    DISPID dispid,
    CStringArray* pStringArray,
    CDWordArray* pCookieArray);

Parameter

Dispid
Die Verteiler-ID einer Eigenschaft des Steuerelements.

pStringArray
Ein Zeichenfolgenarray, das mit Rückgabewerten ausgefüllt werden soll.

pCookieArray
Ein DWORD-Array, das mit Rückgabewerten ausgefüllt werden soll.

Rückgabewert

Nonzero, wenn Elemente zu pStringArray und pCookieArray hinzugefügt wurden.

Hinweise

Überschreiben Sie diese Funktion, wenn ihr Steuerelement über eine Eigenschaft mit einer Reihe möglicher Werte verfügt, die durch Zeichenfolgen dargestellt werden können. Für jedes Element, das pStringArray hinzugefügt wurde, sollten Sie ein entsprechendes "cookie"-Element zu pCookieArray hinzufügen. Diese "Cookie"-Werte können später vom Framework an die COleControl::OnGetPredefinedValue Funktion übergeben werden.

COleControl::OnGetPredefinedValue

Wird vom Framework aufgerufen, um den Wert abzurufen, der einer der vordefinierten Zeichenfolgen entspricht, die zuvor von einer Außerkraftsetzung zurückgegeben COleControl::OnGetPredefinedStringswurden.

virtual BOOL OnGetPredefinedValue(
    DISPID dispid,
    DWORD dwCookie,
    VARIANT* lpvarOut);

Parameter

Dispid
Die Verteiler-ID einer Eigenschaft des Steuerelements.

dwCookie
Ein Cookiewert, der zuvor durch eine Außerkraftsetzung von COleControl::OnGetPredefinedStrings.

lpvarOut
Zeiger auf eine VARIANT Struktur, über die ein Eigenschaftswert zurückgegeben wird.

Rückgabewert

Nonzero, wenn ein Wert in lpvarOut zurückgegeben wurde; andernfalls 0.

COleControl::OnGetViewExtent

Wird vom Framework als Reaktion auf die IViewObject2::GetExtent-Anforderung eines Containers aufgerufen.

virtual BOOL OnGetViewExtent(
    DWORD dwDrawAspect,
    LONG lindex,
    DVTARGETDEVICE* ptd,
    LPSIZEL lpsizel);

Parameter

dwDrawAspect
DWORD beschreibt, welche Form oder welcher Aspekt eines Objekts angezeigt werden soll. Gültige Werte stammen aus der Enumeration DVASPECT oder DVASPECT2.

Lindex
Der Teil des Objekts, der von Interesse ist. Derzeit ist nur -1 gültig.

Ptd
Verweist auf die DVTARGETDEVICE-Struktur , die das Zielgerät definiert, für das die Größe des Objekts zurückgegeben werden soll.

lpsizel
Verweist auf die Position, an der die Größe des Objekts zurückgegeben wird.

Rückgabewert

Nonzero, wenn umfangsinformationen erfolgreich zurückgegeben werden; andernfalls 0.

Hinweise

Überschreiben Sie diese Funktion, wenn Ihr Steuerelement zweistufige Zeichnung verwendet, und seine undurchsichtigen und transparenten Teile weisen unterschiedliche Dimensionen auf.

COleControl::OnGetViewRect

Wird vom Framework als Reaktion auf die Anforderung eines IViewObjectEx::GetRect Containers aufgerufen.

virtual BOOL OnGetViewRect(DWORD dwAspect, LPRECTL pRect);

Parameter

Dwaspect
DWORD beschreibt, welche Form oder welcher Aspekt eines Objekts angezeigt werden soll. Gültige Werte stammen aus der Enumeration DVASPECT oder DVASPECT2:

  • DVASPECT_CONTENT Umgebendes Rechteck des gesamten Objekts. Obere linke Ecke am Ursprung des Objekts und Größe entsprechen dem Umfang, von GetViewExtentdem zurückgegeben wird.

  • DVASPECT_OPAQUE Objekte mit einem rechteckigen undurchsichtigen Bereich geben dieses Rechteck zurück. Andere schlagen fehl.

  • DVASPECT_TRANSPARENT Rechteck, das alle transparenten oder unregelmäßigen Teile abdeckt.

pRect
Verweist auf die RECTL-Struktur , die das Rechteck angibt, in dem das Objekt gezeichnet werden soll. Dieser Parameter steuert die Positionierung und Dehnung des Objekts.

Rückgabewert

Nonzero, wenn die Größe des Rechtecks für das Objekt erfolgreich zurückgegeben wird; andernfalls 0.

Hinweise

Die Größe des Objekts wird von OnGetViewRect einem Rechteck an einer bestimmten Position konvertiert (der Standardwert ist die obere linke Ecke der Anzeige). Überschreiben Sie diese Funktion, wenn Ihr Steuerelement zweistufige Zeichnung verwendet, und seine undurchsichtigen und transparenten Teile weisen unterschiedliche Dimensionen auf.

COleControl::OnGetViewStatus

Wird vom Framework als Reaktion auf die Anforderung eines IViewObjectEx::GetViewStatus Containers aufgerufen.

virtual DWORD OnGetViewStatus();

Rückgabewert

Einer der Werte der VIEWSTATUS-Aufzählung bei erfolgreicher Ausführung; andernfalls 0. Mögliche Werte sind eine beliebige Kombination der folgenden Werte:

Name Beschreibung
VIEWSTATUS_OPAQUE Objekt ist vollständig undurchsichtig. Wenn dieses Bit nicht festgelegt ist, enthält das Objekt transparente Teile. Dieses Bit gilt nur für inhaltsbezogene Aspekte und nicht für DVASPECT_ICON oder DVASPECT_DOCPRINT.
VIEWSTATUS_SOLIDBKGND Das Objekt verfügt über einen vollfarbigen Hintergrund (bestehend aus einer Volltonfarbe, kein Pinselmuster). Dieses Bit ist nur dann sinnvoll, wenn VIEWSTATUS_OPAQUE festgelegt ist und nur für inhaltsbezogene Aspekte und nicht für DVASPECT_ICON oder DVASPECT_DOCPRINT gilt.
VIEWSTATUS_DVASPECTOPAQUE Objekt unterstützt DVASPECT_OPAQUE. Alle IViewObjectEx-Methoden, die einen Zeichnungsaspekt als Parameter verwenden, können mit diesem Aspekt aufgerufen werden.
VIEWSTATUS_DVASPECTTRANSPARENT Objekt unterstützt DVASPECT_TRANSPARENT. Alle IViewObjectEx Methoden, die einen Zeichnungsaspekt als Parameter verwenden, können mit diesem Aspekt aufgerufen werden.

Hinweise

Überschreiben Sie diese Funktion, wenn ihr Steuerelement zweistufige Zeichnung verwendet. Die Standardimplementierung gibt VIEWSTATUS_OPAQUE zurück.

COleControl::OnHideToolBars

Wird vom Framework aufgerufen, wenn das Steuerelement auf der Benutzeroberfläche deaktiviert ist.

virtual void OnHideToolBars();

Hinweise

Die Implementierung sollte alle Symbolleisten ausblenden, die von OnShowToolbars.

COleControl::OnInactiveMouseMove

Wird vom Container für das inaktive Objekt unter dem Mauszeiger beim Empfang einer WM_MOUSEMOVE Nachricht aufgerufen.

virtual void OnInactiveMouseMove(
    LPCRECT lprcBounds,
    long x,
    long y,
    DWORD dwKeyState);

Parameter

lprcBounds
Das umgebende Objektrechteck in Clientkoordinaten des enthaltenden Fensters. Teilt dem Objekt seine genaue Position und Größe auf dem Bildschirm mit, wann die WM_MOUSEMOVE Nachricht empfangen wurde.

x
Die x-Koordinate der Mausposition in Clientkoordinaten des enthaltenden Fensters.

y
Die y-Koordinate der Mausposition in Clientkoordinaten des enthaltenden Fensters.

dwKeyState
Gibt den aktuellen Zustand der Tastaturmodifizierertasten auf der Tastatur an. Gültige Werte können eine Kombination aus einer der Flags MK_CONTROL, MK_SHIFT, MK_ALT, MK_BUTTON, MK_LBUTTON, MK_MBUTTON und MK_RBUTTON sein.

Hinweise

Beachten Sie, dass Fensterclientkoordinaten (Pixel) verwendet werden, um die Mauscursorposition zu übergeben. Dies wird ermöglicht, indem auch das umgebende Rechteck des Objekts im selben Koordinatensystem übergeben wird.

COleControl::OnInactiveSetCursor

Wird vom Container für das inaktive Objekt unter dem Mauszeiger beim Empfang einer WM_SETCURSOR Nachricht aufgerufen.

virtual BOOL OnInactiveSetCursor(
    LPCRECT lprcBounds,
    long x,
    long y,
    DWORD dwMouseMsg,
    BOOL bSetAlways);

Parameter

lprcBounds
Das umgebende Objektrechteck in Clientkoordinaten des enthaltenden Fensters. Teilt dem Objekt seine genaue Position und Größe auf dem Bildschirm mit, wann die WM_SETCURSOR Nachricht empfangen wurde.

x
Die x-Koordinate der Mausposition in Clientkoordinaten des enthaltenden Fensters.

y
Die y-Koordinate der Mausposition in Clientkoordinaten des enthaltenden Fensters.

dwMouseMsg
Der Bezeichner der Mausnachricht, für die ein WM_SETCURSOR aufgetreten ist.

bSetAlways
Gibt an, ob das Objekt den Cursor festlegen muss. Wenn TRUE, muss das Objekt den Cursor festlegen; Wenn FALSE, ist der Cursor nicht verpflichtet, den Cursor festzulegen, und sollte in diesem Fall S_FALSE zurückgeben.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Beachten Sie, dass Fensterclientkoordinaten (Pixel) verwendet werden, um die Mauscursorposition zu übergeben. Dies wird ermöglicht, indem auch das umgebende Rechteck des Objekts im selben Koordinatensystem übergeben wird.

COleControl::OnKeyDownEvent

Vom Framework aufgerufen, nachdem ein Stock KeyDown-Ereignis verarbeitet wurde.

virtual void OnKeyDownEvent(
    USHORT nChar,
    USHORT nShiftState);

Parameter

Nchar
Der Wert des virtuellen Schlüsselcodes der gedrückten Taste. Eine Liste der standardmäßigen virtuellen Schlüsselcodes finden Sie unter Winuser.h

nShiftState
Enthält eine Kombination der folgenden Flags:

  • SHIFT_MASK Die UMSCHALTTASTE wurde während der Aktion gedrückt.

  • CTRL_MASK Die STRG-TASTE wurde während der Aktion gedrückt.

  • ALT_MASK Die ALT-TASTE wurde während der Aktion gedrückt.

Hinweise

Überschreiben Sie diese Funktion, wenn Ihr Steuerelement nach dem Auslösen des Ereignisses Zugriff auf die wichtigen Informationen benötigt.

COleControl::OnKeyPressEvent

Vom Framework aufgerufen, nachdem das Stock KeyPress-Ereignis ausgelöst wurde.

virtual void OnKeyPressEvent(USHORT nChar);

Parameter

Nchar
Enthält den Wert des virtuellen Schlüsselcodes der gedrückten Taste. Eine Liste der standardmäßigen virtuellen Schlüsselcodes finden Sie unter Winuser.h

Hinweise

Beachten Sie, dass der nChar-Wert möglicherweise vom Container geändert wurde.

Überschreiben Sie diese Funktion, wenn Sie nach dem Auftreten dieses Ereignisses eine Benachrichtigung wünschen.

COleControl::OnKeyUpEvent

Vom Framework aufgerufen, nachdem ein Stock KeyDown-Ereignis verarbeitet wurde.

virtual void OnKeyUpEvent(
    USHORT nChar,
    USHORT nShiftState);

Parameter

Nchar
Der Wert des virtuellen Schlüsselcodes der gedrückten Taste. Eine Liste der standardmäßigen virtuellen Schlüsselcodes finden Sie unter Winuser.h

nShiftState
Enthält eine Kombination der folgenden Flags:

  • SHIFT_MASK Die UMSCHALTTASTE wurde während der Aktion gedrückt.

  • CTRL_MASK Die STRG-TASTE wurde während der Aktion gedrückt.

  • ALT_MASK Die ALT-TASTE wurde während der Aktion gedrückt.

Hinweise

Überschreiben Sie diese Funktion, wenn Ihr Steuerelement nach dem Auslösen des Ereignisses Zugriff auf die wichtigen Informationen benötigt.

COleControl::OnMapPropertyToPage

Wird vom Framework aufgerufen, um die Klassen-ID einer Eigenschaftenseite abzurufen, die die Bearbeitung der angegebenen Eigenschaft implementiert.

virtual BOOL OnMapPropertyToPage(
    DISPID dispid,
    LPCLSID lpclsid,
    BOOL* pbPageOptional);

Parameter

Dispid
Die Verteiler-ID einer Eigenschaft des Steuerelements.

lpclsid
Zeiger auf eine CLSID Struktur, über die eine Klassen-ID zurückgegeben wird.

pbPageOptional
Gibt einen Indikator zurück, der angibt, ob die Verwendung der angegebenen Eigenschaftenseite optional ist.

Rückgabewert

Nonzero, wenn eine Klassen-ID in lpclsid zurückgegeben wurde; andernfalls 0.

Hinweise

Überschreiben Sie diese Funktion, um eine Möglichkeit zum Aufrufen der Eigenschaftenseiten Ihres Steuerelements aus dem Eigenschaftenbrowser des Containers bereitzustellen.

COleControl::OnMnemonic

Wird vom Framework aufgerufen, wenn der Container festgestellt hat, dass eine Mnemonic-Taste des OLE-Steuerelements gedrückt wurde.

virtual void OnMnemonic(LPMSG pMsg);

Parameter

pMsg
Ein Zeiger auf die durch Drücken einer mnemonischen Taste generierte Windows-Meldung.

COleControl::OnProperties

Wird vom Framework aufgerufen, wenn das Eigenschaftenverb des Steuerelements vom Container aufgerufen wurde.

virtual BOOL OnProperties(
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Parameter

lpMsg
Ein Zeiger auf die Windows-Nachricht, die das Verb aufgerufen hat.

hWndParent
Ein Handle für das übergeordnete Fenster des Steuerelements.

lpRect
Ein Zeiger auf das Rechteck, das vom Steuerelement im Container verwendet wird.

Rückgabewert

Nonzero, wenn der Anruf erfolgreich ist; andernfalls 0.

Hinweise

Die Standardimplementierung zeigt ein modales Eigenschaftendialogfeld an.

Sie können diese Funktion auch verwenden, um die Anzeige der Eigenschaftenseiten Ihres Steuerelements zu verursachen. Rufen Sie die OnProperties Funktion auf, und übergeben Sie das Handle des übergeordneten Elements des Steuerelements im hWndParent-Parameter . In diesem Fall werden die Werte der parameter lpMsg und lpRect ignoriert.

COleControl::OnQueryHitPoint

Wird vom Framework als Reaktion auf die Anforderung eines IViewObjectEx::QueryHitPoint Containers aufgerufen.

virtual BOOL OnQueryHitPoint(
    DWORD dwAspect,
    LPCRECT pRectBounds,
    POINT ptlLoc,
    LONG lCloseHint,
    DWORD* pHitResult);

Parameter

Dwaspect
Gibt an, wie das Objekt dargestellt wird. Gültige Werte stammen aus der Enumeration DVASPECT oder DVASPECT2.

pRectBounds
Zeigen Sie auf eine RECT Struktur, die das umgebende Rechteck des OLE-Steuerelementclientbereichs angibt.

ptlLoc
Zeigen Sie auf die POINT Struktur, die den punkt angibt, der auf einen Treffer überprüft werden soll. Der Punkt wird in OLE-Clientbereichskoordinaten angegeben.

lCloseHint
Der Abstand, der "nah" zum punkt definiert, der auf einen Treffer überprüft wird.

pHitResult
Zeigen Sie auf das Ergebnis der Trefferabfrage. Einer der folgenden Werte:

  • HITRESULT_OUTSIDE ptlLoc sich außerhalb des OLE-Objekts befindet und nicht geschlossen wird.

  • HITRESULT_TRANSPARENT ptlLoc befindet sich innerhalb der Grenzen des OLE-Objekts, aber nicht in der Nähe des Bilds. Beispielsweise könnte ein Punkt in der Mitte eines transparenten Kreises HITRESULT_TRANSPARENT werden.

  • HITRESULT_CLOSE ptlLoc befindet sich innerhalb oder außerhalb des OLE-Objekts, aber nah genug, um das Objekt zu berücksichtigen. Kleine, dünne oder detaillierte Objekte können diesen Wert verwenden. Auch wenn sich ein Punkt außerhalb des umgebenden Rechtecks eines Objekts befindet, ist es möglicherweise noch geschlossen (dies ist erforderlich, um kleine Objekte zu treffen).

  • HITRESULT_HIT ptlLoc befindet sich innerhalb des Bilds des Objekts.

Rückgabewert

Nonzero, wenn ein Trefferergebnis erfolgreich zurückgegeben wird; andernfalls 0. Ein Treffer ist eine Überlappung mit dem ANZEIGEbereich des OLE-Steuerelements.

Hinweise

Fragt ab, ob das Anzeigerechteck eines Objekts den angegebenen Punkt überlappt (trifft den Punkt). QueryHitPoint kann überschrieben werden, um Treffer für nicht rechteckige Objekte zu testen.

COleControl::OnQueryHitRect

Wird vom Framework als Reaktion auf die Anforderung eines IViewObjectEx::QueryHitRect Containers aufgerufen.

virtual BOOL OnQueryHitRect(
    DWORD dwAspect,
    LPCRECT pRectBounds,
    LPCRECT prcLoc,
    LONG lCloseHint,
    DWORD* pHitResult);

Parameter

Dwaspect
Gibt an, wie das Objekt dargestellt werden soll. Gültige Werte stammen aus der Enumeration DVASPECT oder DVASPECT2.

pRectBounds
Zeigen Sie auf eine RECT Struktur, die das umgebende Rechteck des OLE-Steuerelementclientbereichs angibt.

prcLoc
Zeigen Sie auf die RECT Struktur, die das Rechteck angibt, das auf einen Treffer überprüft werden soll (überlappend mit dem Objektrechteck), relativ zur oberen linken Ecke des Objekts.

lCloseHint
Nicht verwendet.

pHitResult
Zeigen Sie auf das Ergebnis der Trefferabfrage. Einer der folgenden Werte:

  • HITRESULT_OUTSIDE kein Punkt im Rechteck vom OLE-Objekt getroffen wird.

  • HITRESULT_HIT mindestens einen Punkt im Rechteck wäre ein Treffer auf das Objekt.

Rückgabewert

Nonzero, wenn ein Trefferergebnis erfolgreich zurückgegeben wird; andernfalls 0.

Hinweise

Fragt ab, ob das Anzeigerechteck eines Objekts einen beliebigen Punkt im angegebenen Rechteck überlappt (trifft das Rechteck). QueryHitRect kann überschrieben werden, um Treffer für nicht rechteckige Objekte zu testen.

COleControl::OnRenderData

Vom Framework aufgerufen, um Daten im angegebenen Format abzurufen.

virtual BOOL OnRenderData(
    LPFORMATETC lpFormatEtc,
    LPSTGMEDIUM lpStgMedium);

Parameter

lpFormatEtc
Verweist auf die FORMATTC-Struktur , die das Format angibt, in dem Informationen angefordert werden.

lpStgMedium
Verweist auf eine STGMEDIUM-Struktur , in der die Daten zurückgegeben werden sollen.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Das angegebene Format ist ein zuvor im Steuerelementobjekt platziertes Format mit den Memberfunktionen DelayRenderData oder DelayRenderFileData für das verzögerte Rendering. Die Standardimplementierung dieser Funktion wird aufgerufen OnRenderFileData bzw OnRenderGlobalData. , wenn das bereitgestellte Speichermedium entweder eine Datei oder ein Speicher ist. Wenn das angeforderte Format CF_METAFILEPICT oder das persistente Eigenschaftensatzformat ist, rendert die Standardimplementierung die entsprechenden Daten und gibt nonzero zurück. Andernfalls gibt sie 0 zurück und führt nichts aus.

Wenn lpStgMedium-tymed> TYMED_NULL ist, sollte das STGMEDIUM zugeordnet und wie durch lpFormatEtc-tymed> angegeben gefüllt werden. Wenn nicht TYMED_NULL, sollte das STGMEDIUM mit den Daten ausgefüllt werden.

Überschreiben Sie diese Funktion, um Ihre Daten im angeforderten Format und Medium bereitzustellen. Je nach Ihren Daten sollten Sie stattdessen eine der anderen Versionen dieser Funktion außer Kraft setzen. Wenn Ihre Daten klein und in der Größe festgelegt sind, überschreiben OnRenderGlobalDataSie dies. Wenn sich Die Daten in einer Datei befinden oder eine variable Größe aufweisen, überschreiben OnRenderFileDataSie diese.

Weitere Informationen finden Sie unter den FORMATETC Und STGMEDIUM Strukturen im Windows SDK.

COleControl::OnRenderFileData

Wird vom Framework aufgerufen, um Daten im angegebenen Format abzurufen, wenn das Speichermedium eine Datei ist.

virtual BOOL OnRenderFileData(
    LPFORMATETC lpFormatEtc,
    CFile* pFile);

Parameter

lpFormatEtc
Verweist auf die FORMATTC-Struktur , die das Format angibt, in dem Informationen angefordert werden.

pFile
Verweist auf ein CFile-Objekt , in dem die Daten gerendert werden sollen.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Das angegebene Format ist ein zuvor im Steuerelementobjekt platziertes Format mit der DelayRenderData-Memberfunktion für das verzögerte Rendering. Die Standardimplementierung dieser Funktion gibt einfach FALSE zurück.

Überschreiben Sie diese Funktion, um Ihre Daten im angeforderten Format und Medium bereitzustellen. Je nach Ihren Daten sollten Sie stattdessen eine der anderen Versionen dieser Funktion außer Kraft setzen. Wenn Sie mehrere Speichermedien behandeln möchten, überschreiben OnRenderDataSie diese. Wenn sich Die Daten in einer Datei befinden oder eine variable Größe aufweisen, überschreiben OnRenderFileDataSie diese.

Weitere Informationen finden Sie in der FORMATETC Struktur im Windows SDK.

COleControl::OnRenderGlobalData

Wird vom Framework aufgerufen, um Daten im angegebenen Format abzurufen, wenn das angegebene Speichermedium globaler Speicher ist.

virtual BOOL OnRenderGlobalData(
    LPFORMATETC lpFormatEtc,
    HGLOBAL* phGlobal);

Parameter

lpFormatEtc
Verweist auf die FORMATTC-Struktur , die das Format angibt, in dem Informationen angefordert werden.

phGlobal
Verweist auf ein Handle auf den globalen Speicher, in dem die Daten zurückgegeben werden sollen. Wenn kein Arbeitsspeicher zugewiesen wurde, kann dieser Parameter NULL sein.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Das angegebene Format ist ein zuvor im Steuerelementobjekt platziertes Format mit der DelayRenderData-Memberfunktion für das verzögerte Rendering. Die Standardimplementierung dieser Funktion gibt einfach FALSE zurück.

Wenn phGlobal NULL ist, sollte ein neuer HGLOBAL zugeordnet und in phGlobal zurückgegeben werden. Andernfalls sollte der von phGlobal angegebene HGLOBAL mit den Daten gefüllt werden. Die Im HGLOBAL platzierte Datenmenge darf die aktuelle Größe des Speicherblocks nicht überschreiten. Außerdem kann der Block nicht in eine größere Größe umgestellt werden.

Überschreiben Sie diese Funktion, um Ihre Daten im angeforderten Format und Medium bereitzustellen. Je nach Ihren Daten sollten Sie stattdessen eine der anderen Versionen dieser Funktion außer Kraft setzen. Wenn Sie mehrere Speichermedien behandeln möchten, überschreiben OnRenderDataSie diese. Wenn sich Die Daten in einer Datei befinden oder eine variable Größe aufweisen, überschreiben OnRenderFileDataSie diese.

Weitere Informationen finden Sie in der FORMATETC Struktur im Windows SDK.

COleControl::OnResetState

Wird vom Framework aufgerufen, wenn die Eigenschaften des Steuerelements auf ihre Standardwerte festgelegt werden sollen.

virtual void OnResetState();

Hinweise

Die Standardimplementierung ruft DoPropExchange auf und übergibt ein CPropExchange Objekt, das bewirkt, dass Eigenschaften auf ihre Standardwerte festgelegt werden.

Der Steuerelementschreiber kann Initialisierungscode für das OLE-Steuerelement in dieses überschreibbare Steuerelement einfügen. Diese Funktion wird aufgerufen, wenn IPersistStream::Load oder IPersistStorage::Load fehlschlägt, oder IPersistStreamInit::InitNew oder IPersistStorage::InitNew wird aufgerufen, ohne zuerst entweder IPersistStream::Load oder IPersistStorage::Load.

COleControl::OnSetClientSite

Wird vom Framework aufgerufen, wenn der Container die Funktion des Steuerelements IOleControl::SetClientSite aufgerufen hat.

virtual void OnSetClientSite();

Hinweise

Überprüft standardmäßig, OnSetClientSite ob Datenpfadeigenschaften geladen werden, und , falls ja, Aufrufe DoDataPathPropExchange.

Überschreiben Sie diese Funktion, um eine spezielle Verarbeitung dieser Benachrichtigung vorzunehmen. Insbesondere sollten Außerkraftsetzungen dieser Funktion die Basisklasse aufrufen.

COleControl::OnSetData

Vom Framework aufgerufen, um die Daten des Steuerelements durch die angegebenen Daten zu ersetzen.

virtual BOOL OnSetData(
    LPFORMATETC lpFormatEtc,
    LPSTGMEDIUM lpStgMedium,
    BOOL bRelease);

Parameter

lpFormatEtc
Zeigen Sie auf eine FORMATTC-Struktur , die das Format der Daten angibt.

lpStgMedium
Zeiger auf eine STGMEDIUM-Struktur , in der sich die Daten befinden.

bRelease
TRUE, wenn das Steuerelement das Speichermedium freigeben soll; FALSE, wenn das Steuerelement das Speichermedium nicht freigeben soll.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Wenn sich die Daten im Format für beständigen Eigenschaftensatz befinden, ändert die Standardimplementierung den Zustand des Steuerelements entsprechend. Andernfalls führt die Standardimplementierung nichts aus. Wenn bRelease WAHR ist, wird ein Aufruf ReleaseStgMedium ausgeführt; andernfalls nicht.

Überschreiben Sie diese Funktion, um die Daten des Steuerelements durch die angegebenen Daten zu ersetzen.

Weitere Informationen finden Sie unter den FORMATETC Und STGMEDIUM Strukturen im Windows SDK.

COleControl::OnSetExtent

Wird vom Framework aufgerufen, wenn der Umfang des Steuerelements geändert werden muss, als Ergebnis eines Aufrufs von IOleObject::SetExtent.

virtual BOOL OnSetExtent(LPSIZEL lpSizeL);

Parameter

lpSizeL
Ein Zeiger auf die Struktur, die SIZEL lange ganze Zahlen verwendet, um die Breite und Höhe des Steuerelements darzustellen, ausgedrückt in HIMETRIC-Einheiten.

Rückgabewert

Nonzero, wenn die Größenänderung akzeptiert wurde; andernfalls 0.

Hinweise

Die Standardimplementierung behandelt die Größenänderung des Steuerelementumfangs. Wenn das Steuerelement aktiv ist, wird ein Aufruf des Containers OnPosRectChanged ausgeführt.

Überschreiben Sie diese Funktion, um die Standardgröße des Steuerelements zu ändern.

COleControl::OnSetObjectRects

Vom Framework aufgerufen, um einen Aufruf von IOleInPlaceObject::SetObjectRects zu implementieren.

virtual BOOL OnSetObjectRects(
    LPCRECT lpRectPos,
    LPCRECT lpRectClip);

Parameter

lpRectPos
Ein Zeiger auf eine RECT Struktur, der die neue Position und Größe des Steuerelements relativ zum Container angibt.

lpRectClip
Ein Zeiger auf eine RECT Struktur, der einen rechteckigen Bereich angibt, an den das Steuerelement abgeschnitten werden soll.

Rückgabewert

Nonzero, wenn die Neupositionierung akzeptiert wurde; andernfalls 0.

Hinweise

Die Standardimplementierung behandelt automatisch die Neupositionierung und Größenänderung des Steuerelementfensters und gibt WAHR zurück.

Überschreiben Sie diese Funktion, um das Standardverhalten dieser Funktion zu ändern.

COleControl::OnShowToolBars

Wird vom Framework aufgerufen, wenn das Steuerelement aktiviert wurde.

virtual void OnShowToolBars();

Hinweise

Bei der Standardimplementierung wird keine Aktion ausgeführt.

COleControl::OnTextChanged

Wird vom Framework aufgerufen, wenn sich der Wert der Eigenschaft "Caption" oder "Text" geändert hat.

virtual void OnTextChanged();

Hinweise

Die standardmäßigen Implementierungsaufrufe InvalidateControl.

Überschreiben Sie diese Funktion, wenn Sie nach änderungen dieser Eigenschaft eine Benachrichtigung wünschen.

COleControl::OnWindowlessMessage

Wird vom Framework als Reaktion auf die Anforderung eines IOleInPlaceObjectWindowless::OnWindowMessage Containers aufgerufen.

virtual BOOL OnWindowlessMessage(
    UINT msg,
    WPARAM wParam,
    LPARAM lParam,
    LRESULT* plResult);

Parameter

msg
Meldungs-ID, die von Windows übergeben wird.

wParam
Wie von Windows übergeben. Gibt zusätzliche nachrichtenspezifische Informationen an. Der Inhalt dieses Parameters hängt vom Wert des Msg-Parameters ab.

lParam
Wie von Windows übergeben. Gibt zusätzliche nachrichtenspezifische Informationen an. Der Inhalt dieses Parameters hängt vom Wert des Msg-Parameters ab.

plResult
Windows-Ergebniscode. Gibt das Ergebnis der Nachrichtenverarbeitung an und hängt von der gesendeten Nachricht ab.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Verarbeitet Fenstermeldungen für fensterlose Steuerelemente. COleControl's OnWindowlessMessage sollten für Andere Fensternachrichten als Mausnachrichten und Tastaturnachrichten verwendet werden. COleControl stellt SetCapture und SetFocus speziell zum Abrufen der Mausaufnahme und des Tastaturfokus für fensterlose OLE-Objekte bereit.

Da fensterlose Objekte nicht über ein Fenster verfügen, benötigen sie einen Mechanismus, mit dem der Container Nachrichten an sie verteilen kann. Ein fensterloses OLE-Objekt ruft Nachrichten aus seinem Container über die Methode auf der OnWindowMessageIOleInPlaceObjectWindowless Schnittstelle ab (eine Erweiterung von IOleInPlaceObject für die fensterlose Unterstützung). OnWindowMessage verwendet HWND keinen Parameter.

COleControl::P arentToClient

Übersetzt die Koordinaten von pPoint in Clientkoordinaten.

virtual UINT ParentToClient(
    LPCRECT lprcBounds,
    LPPOINT pPoint,
    BOOL bHitTest = FALSE) const;

Parameter

lprcBounds
Zeigen Sie auf die Grenzen des OLE-Steuerelements innerhalb des Containers. Nicht der Clientbereich, sondern der Bereich des gesamten Steuerelements, einschließlich Rahmen und Bildlaufleisten.

pPoint
Zeiger auf den übergeordneten Punkt (Container), der in die Koordinaten des Clientbereichs des Steuerelements übersetzt werden soll.

bHitTest
Gibt an, ob Treffertests am Punkt durchgeführt werden sollen.

Rückgabewert

Wenn "bHitTest " FALSCH ist, wird HTNOWHERE zurückgegeben. Wenn bHitTest WAHR ist, gibt die Position zurück, an der der übergeordnete Punkt (Container) im Clientbereich des OLE-Steuerelements landet und einer der folgenden Maustreffertestwerte ist:

  • HTBORDER Im Rahmen eines Fensters, das keinen Größenrahmen aufweist.

  • HTBOTTOM Im unteren horizontalen Rahmen des Fensters.

  • HTBOTTOMLEFT In der unteren linken Ecke des Fensterrahmens.

  • HTBOTTOMRIGHT In der unteren rechten Ecke des Fensterrahmens.

  • HTCAPTION In einem Titelleistenbereich.

  • HTCLIENT In einem Clientbereich.

  • HTERROR Auf dem Bildschirmhintergrund oder auf einer Trennlinie zwischen Fenstern (identisch mit HTNOWHERE, mit der Ausnahme, dass die DefWndProc Windows-Funktion einen Systemton erzeugt, um einen Fehler anzuzeigen).

  • HTGROWBOX In einem Größenfeld.

  • HTHSCROLL In der horizontalen Bildlaufleiste.

  • HTLEFT Im linken Rand des Fensters.

  • HTMAXBUTTON In einer Maximierungsschaltfläche.

  • HTMENU In einem Menübereich.

  • HTMINBUTTON In einer Schaltfläche "Minimieren".

  • HTNOWHERE Auf dem Bildschirmhintergrund oder auf einer Trennlinie zwischen Fenstern.

  • HTREDUCE In einer Schaltfläche "Minimieren".

  • HTRIGHT Im rechten Rahmen des Fensters.

  • HTSIZE In einem Größenfeld (identisch mit HTGROWBOX).

  • HTSYSMENU In einem Steuerelementmenü oder in einer Schaltfläche "Schließen" in einem untergeordneten Fenster.

  • HTTOP Im oberen horizontalen Rahmen des Fensters.

  • HTTOPLEFT In der oberen linken Ecke des Fensterrahmens.

  • HTTOPRIGHT In der oberen rechten Ecke des Fensterrahmens.

  • HTTRANSPARENT In einem Fenster, das derzeit von einem anderen Fenster abgedeckt ist.

  • HTVSCROLL In der vertikalen Bildlaufleiste.

  • HTZOOM In einer Schaltfläche "Maximieren".

Hinweise

Bei eingabe pPoint relativ zum Ursprung des übergeordneten Elements (obere linke Ecke des Containers). Bei ausgabe pPoint relativ zum Ursprung des Clientbereichs des OLE-Steuerelements (obere linke Ecke des Clientbereichs des Steuerelements).

COleControl::P ostModalDialog

Benachrichtigt den Container, dass ein modales Dialogfeld geschlossen wurde.

void PostModalDialog(HWND hWndParent = NULL);

Parameter

hWndParent
Behandeln des übergeordneten Fensters des modalen Dialogfelds.

Hinweise

Rufen Sie diese Funktion nach dem Anzeigen eines modalen Dialogfelds auf. Sie müssen diese Funktion aufrufen, damit der Container alle fenster der obersten Ebene aktivieren kann, die von PreModalDialog. Diese Funktion sollte mit einem Aufruf von PreModalDialog.

COleControl::P reModalDialog

Benachrichtigt den Container, dass ein modales Dialogfeld angezeigt werden soll.

void PreModalDialog(HWND hWndParent = NULL);

Parameter

hWndParent
Behandeln des übergeordneten Fensters des modalen Dialogfelds.

Hinweise

Rufen Sie diese Funktion auf, bevor Sie ein modales Dialogfeld anzeigen. Sie müssen diese Funktion aufrufen, damit der Container alle Fenster der obersten Ebene deaktivieren kann. Nachdem das modale Dialogfeld angezeigt wurde, müssen Sie dann aufrufen PostModalDialog.

COleControl::RecreateControlWindow

Zerstört und erstellt das Fenster des Steuerelements erneut.

void RecreateControlWindow();

Hinweise

Dies kann erforderlich sein, wenn Sie die Formatvorlagenbits des Fensters ändern müssen.

COleControl::Refresh

Erzwingt eine Neubemerkung des OLE-Steuerelements.

void Refresh();

Hinweise

Diese Funktion wird von der COleControl Basisklasse als Aktienmethode unterstützt, die als Refresh bezeichnet wird. Auf diese Weise können Benutzer ihres OLE-Steuerelements das Steuerelement zu einem bestimmten Zeitpunkt neu erstellen. Weitere Informationen zu dieser Methode finden Sie im Artikel ActiveX-Steuerelemente: Methoden.

COleControl::ReleaseCapture

Gibt die Mausaufnahme frei.

BOOL ReleaseCapture();

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Wenn das Steuerelement derzeit über die Mausaufnahme verfügt, wird die Aufnahme losgelassen. Andernfalls hat diese Funktion keine Auswirkung.

COleControl::ReleaseDC

Gibt den Anzeigegerätekontext eines Containers eines fensterlosen Steuerelements frei, sodass der Gerätekontext für die Verwendung durch andere Anwendungen freigegeben wird.

int ReleaseDC(CDC* pDC);

Parameter

pDC
Gibt den Containergerätekontext an, der freigegeben werden soll.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Die Anwendung muss für jeden Aufruf von GetDC aufrufenReleaseDC.

COleControl::ReparentControlWindow

Legt das übergeordnete Element des Steuerelements fest.

virtual void ReparentControlWindow(
    HWND hWndOuter,
    HWND hWndParent);

Parameter

hWndOuter
Der Ziehpunkt des Steuerelementfensters.

hWndParent
Das Handle des neuen übergeordneten Fensters.

Hinweise

Rufen Sie diese Funktion auf, um das übergeordnete Element des Steuerelementfensters zurückzusetzen.

COleControl::ResetStockProps

Initialisiert den Status der COleControl Aktieneigenschaften auf ihre Standardwerte.

void ResetStockProps();

Hinweise

Die Eigenschaften sind: Appearance, BackColor, BorderStyle, Caption, Enabled, Font, ForeColor, hWnd und Text. Eine Beschreibung der Aktieneigenschaften finden Sie unter ActiveX-Steuerelemente: Hinzufügen von Aktieneigenschaften.

Sie können die binäre Initialisierungsleistung ResetStockProps eines Steuerelements mithilfe und ResetVersion außer Kraft setzen COleControl::OnResetState. Betrachten Sie das folgende Beispiel. Weitere Informationen zur Optimierung der Initialisierung finden Sie unter ActiveX-Steuerelemente: Optimierung.

Beispiel

void CMyAxCtrl::OnResetState()
{
   ResetVersion(MAKELONG(_wVerMinor, _wVerMajor));
   ResetStockProps();

   // initialize custom properties here
}

COleControl::ResetVersion

Initialisiert die Versionsnummer für den angegebenen Wert.

void ResetVersion(DWORD dwVersionDefault);

Parameter

dwVersionDefault
Die Versionsnummer, die dem Steuerelement zugewiesen werden soll.

Hinweise

Sie können die binäre Initialisierungsleistung ResetVersion eines Steuerelements mithilfe und ResetStockProps außer Kraft setzen COleControl::OnResetState. Sehen Sie sich das Beispiel bei ResetStockProps an. Weitere Informationen zur Optimierung der Initialisierung finden Sie unter ActiveX-Steuerelemente: Optimierung.

COleControl::ScrollWindow

Ermöglicht es einem fensterlosen OLE-Objekt, einen Bereich innerhalb seines aktiven Bilds auf dem Bildschirm zu scrollen.

void ScrollWindow(
    int xAmount,
    int yAmount,
    LPCRECT lpRect = NULL,
    LPCRECT lpClipRect = NULL);

Parameter

xAmount
Gibt die Größe des horizontalen Bildlaufs in Geräteeinheiten an. Dieser Parameter muss ein negativer Wert sein, um nach links zu scrollen.

yAmount
Gibt die Größe des vertikalen Bildlaufs in Geräteeinheiten an. Dieser Parameter muss ein negativer Wert sein, um nach oben zu scrollen.

lpRect
Verweist auf ein CRect-Objekt oder eine RECT-Struktur, die den Teil des zu scrollenden Clientbereichs des OLE-Objekts in Clientkoordinaten des enthaltenden Fensters angibt. Wenn lpRect NULL ist, wird der Clientbereich des gesamten OLE-Objekts gescrollt.

lpClipRect
Verweist auf ein Objekt oder RECT eine CRect Struktur, das das zu beschneidende Rechteck angibt. Es werden nur Pixel innerhalb des Rechtecks gescrollt. Bits außerhalb des Rechtecks sind nicht betroffen, auch wenn sie sich im lpRect-Rechteck befinden. Wenn lpClipRect NULL ist, wird kein Clipping für das Bildlaufrechteck ausgeführt.

COleControl::SelectFontObject

Wählt eine Schriftart in einem Gerätekontext aus.

CFont* SelectFontObject(
    CDC* pDC,
    CFontHolder& fontHolder);

Parameter

pDC
Zeiger auf ein Gerätekontextobjekt.

fontHolder
Verweis auf das CFontHolder -Objekt, das die zu ausgewählte Schriftart darstellt.

Rückgabewert

Ein Zeiger auf die zuvor ausgewählte Schriftart. Wenn der Aufrufer alle Zeichnungsvorgänge abgeschlossen hat, die FontHolder verwenden , sollte die zuvor ausgewählte Schriftart erneut ausgewählt werden, indem sie sie als Parameter an CDC::SelectObject übergeben.

COleControl::SelectStockFont

Wählt die Eigenschaft "Stock Font" in einem Gerätekontext aus.

CFont* SelectStockFont(CDC* pDC);

Parameter

pDC
Der Gerätekontext, in den die Schriftart ausgewählt wird.

Rückgabewert

Ein Zeiger auf das zuvor ausgewählte CFont Objekt. Sie sollten CDC::SelectObject verwenden, um diese Schriftart wieder im Gerätekontext auszuwählen, wenn Sie fertig sind.

COleControl::SerializeExtent

Serialisiert oder initialisiert den Zustand des anzeigebereichs, der dem Steuerelement zugewiesen ist.

void SerializeExtent(CArchive& ar);

Parameter

Ar
Ein CArchive Objekt, das in oder von dem serialisiert werden soll.

Hinweise

Sie können die binäre Persistenzleistung eines Steuerelements mithilfe SerializeExtentvon , SerializeStockPropsund SerializeVersion überschreiben COleControl::Serialize. Betrachten Sie das folgende Beispiel. Weitere Informationen zur Optimierung der Initialisierung finden Sie unter ActiveX-Steuerelemente: Optimierung.

Beispiel

void CMyAxCtrl::Serialize(CArchive &ar)
{
   SerializeVersion(ar, MAKELONG(_wVerMinor, _wVerMajor));
   SerializeExtent(ar);
   SerializeStockProps(ar);

   if (ar.IsStoring())
   { // storing code
   }
   else
   { // loading code
   }
}

COleControl::SerializeStockProps

Serialisiert oder initialisiert den Zustand der COleControl Aktieneigenschaften: Darstellung, BackColor, BorderStyle, Caption, Enabled, Font, ForeColor und Text.

void SerializeStockProps(CArchive& ar);

Parameter

Ar
Ein CArchive Objekt, das in oder von dem serialisiert werden soll.

Hinweise

Eine Beschreibung der Aktieneigenschaften finden Sie unter ActiveX-Steuerelemente: Hinzufügen von Aktieneigenschaften.

Sie können die binäre Persistenzleistung eines Steuerelements mithilfe SerializeStockPropsvon , SerializeExtentund SerializeVersion überschreiben COleControl::Serialize. Ein Beispiel finden Sie im Code bei SerializeExtent. Weitere Informationen zur Optimierung der Initialisierung finden Sie unter ActiveX-Steuerelemente: Optimierung.

COleControl::SerializeVersion

Serialisiert oder initialisiert den Status der Versionsinformationen eines Steuerelements.

DWORD SerializeVersion(
    CArchive& ar,
    DWORD dwVersionDefault,
    BOOL bConvert = TRUE);

Parameter

Ar
Ein CArchive Objekt, das in oder von dem serialisiert werden soll.

dwVersionDefault
Die aktuelle Versionsnummer des Steuerelements.

bConvert
Gibt an, ob persistente Daten beim Speichern in das neueste Format konvertiert werden sollen, oder Standard im gleichen Format wie beim Laden enthalten waren.

Rückgabewert

Die Versionsnummer des Steuerelements. Wenn das angegebene Archiv geladen wird, SerializeVersion wird die aus diesem Archiv geladene Version zurückgegeben. Andernfalls wird die aktuell geladene Version zurückgegeben.

Hinweise

Sie können die binäre Persistenzleistung eines Steuerelements mithilfe SerializeVersionvon , SerializeExtentund SerializeStockProps überschreiben COleControl::Serialize. Ein Beispiel finden Sie im Code bei SerializeExtent. Weitere Informationen zur Optimierung der Initialisierung finden Sie unter ActiveX-Steuerelemente: Optimierung.

COleControl::SetAppearance

Legt den Wert der Aktiendarstellung ihres Steuerelements fest.

void SetAppearance (short sAppearance);

Parameter

sAppearance
Ein short (VT_I2)-Wert, der für die Darstellung des Steuerelements verwendet werden soll. Ein Wert von Null legt die Darstellung des Steuerelements auf flach fest, und ein Wert von 1 legt die Darstellung des Steuerelements auf 3D fest.

Hinweise

Weitere Informationen zu Aktieneigenschaften finden Sie unter ActiveX-Steuerelemente: Eigenschaften.

COleControl::SetBackColor

Legt den Aktien-BackColor-Eigenschaftswert ihres Steuerelements fest.

void SetBackColor(OLE_COLOR dwBackColor);

Parameter

dwBackColor
Ein OLE_COLOR Wert, der für die Hintergrundzeichnung des Steuerelements verwendet werden soll.

Hinweise

Weitere Informationen zur Verwendung dieser Eigenschaft und anderer verwandter Eigenschaften finden Sie im Artikel ActiveX-Steuerelemente: Eigenschaften.

COleControl::SetBorderStyle

Legt den Wert der BorderStyle-Aktieneigenschaft Ihres Steuerelements fest.

void SetBorderStyle(short sBorderStyle);

Parameter

sBorderStyle
Das neue Rahmenformat für das Steuerelement; 0 gibt keinen Rahmen an und 1 gibt einen normalen Rahmen an.

Hinweise

Das Steuerelementfenster wird dann neu erstellt und OnBorderStyleChanged aufgerufen.

COleControl::SetCapture

Bewirkt, dass das Containerfenster des Steuerelements den Besitz der Mauserfassung im Namen des Steuerelements übernimmt.

CWnd* SetCapture();

Rückgabewert

Ein Zeiger auf das CWnd Fensterobjekt, das zuvor Mauseingaben empfangen hat.

Hinweise

Wenn das Steuerelement aktiviert und fensterlos ist, bewirkt diese Funktion, dass das Containerfenster des Steuerelements den Besitz der Mausaufnahme im Namen des Steuerelements übernimmt. Andernfalls bewirkt diese Funktion, dass das Steuerelement selbst den Besitz der Mausaufnahme übernimmt (identisch mit CWnd::SetCapture).

COleControl::SetControlSize

Legt die Größe des OLE-Steuerelementfensters fest und benachrichtigt den Container, dass sich die Steuerelementwebsite ändert.

BOOL SetControlSize(int cx, int cy);

Parameter

Cx
Gibt die neue Breite des Steuerelements in Pixel an.

Cy
Gibt die neue Höhe des Steuerelements in Pixel an.

Rückgabewert

Nonzero, wenn der Anruf erfolgreich war; andernfalls 0.

Hinweise

Diese Funktion sollte nicht im Konstruktor Ihres Steuerelements verwendet werden.

Beachten Sie, dass alle Koordinaten für Steuerelementfenster relativ zur oberen linken Ecke des Steuerelements sind.

COleControl::SetEnabled

Legt den Aktienwert der Enabled-Eigenschaft Ihres Steuerelements fest.

void SetEnabled(BOOL bEnabled);

Parameter

bEnabled
TRUE, wenn das Steuerelement aktiviert werden soll; andernfalls FALSE.

Hinweise

Nach dem Festlegen dieser Eigenschaft OnEnabledChange wird aufgerufen.

COleControl::SetFocus

Bewirkt, dass das Containerfenster des Steuerelements den Besitz des Eingabefokus im Namen des Steuerelements übernimmt.

CWnd* SetFocus();

Rückgabewert

Ein Zeiger auf das CWnd Fensterobjekt, das zuvor den Eingabefokus hatte, oder NULL, wenn kein solches Fenster vorhanden ist.

Hinweise

Wenn das Steuerelement aktiviert und fensterlos ist, bewirkt diese Funktion, dass das Containerfenster des Steuerelements den Eingabefokus im Namen des Steuerelements besitzt. Der Eingabefokus leitet Tastatureingaben an das Fenster des Containers weiter, und der Container verteilt alle nachfolgenden Tastaturmeldungen an das OLE-Objekt, das aufgerufen wird SetFocus. Jedes Fenster, das zuvor den Eingabefokus hatte, verliert ihn.

Wenn das Steuerelement nicht fensterlos ist, bewirkt diese Funktion, dass das Steuerelement selbst den Eingabefokus besitzt (identisch mit CWnd::SetFocus).

COleControl::SetFont

Legt die Eigenschaft "Stock Font" ihres Steuerelements fest.

void SetFont(LPFONTDISP pFontDisp);

Parameter

pFontDisp
Ein Zeiger auf eine Font Dispatch-Schnittstelle.

COleControl::SetForeColor

Legt den Aktienwert der ForeColor-Eigenschaft ihres Steuerelements fest.

void SetForeColor(OLE_COLOR dwForeColor);

Parameter

dwForeColor
Ein OLE_COLOR Wert, der für die Vordergrundzeichnung des Steuerelements verwendet werden soll.

Hinweise

Weitere Informationen zur Verwendung dieser Eigenschaft und anderer verwandter Eigenschaften finden Sie im Artikel ActiveX-Steuerelemente: Eigenschaften.

COleControl::SetInitialDataFormats

Vom Framework aufgerufen, um die Liste der vom Steuerelement unterstützten Datenformate zu initialisieren.

virtual void SetInitialDataFormats();

Hinweise

Die Standardimplementierung gibt zwei Formate an: CF_METAFILEPICT und den beständigen Eigenschaftensatz.

COleControl::SetInitialSize

Legt die Größe eines OLE-Steuerelements fest, wenn es zum ersten Mal in einem Container angezeigt wird.

void SetInitialSize(
    int cx,
    int cy);

Parameter

Cx
Die anfängliche Breite des OLE-Steuerelements in Pixeln.

Cy
Die anfängliche Höhe des OLE-Steuerelements in Pixeln.

Hinweise

Rufen Sie diese Funktion in Ihrem Konstruktor auf, um die Anfangsgröße des Steuerelements festzulegen. Die Anfangsgröße wird in Geräteeinheiten oder Pixeln gemessen. Es wird empfohlen, diesen Aufruf im Konstruktor Ihres Steuerelements zu tätigen.

COleControl::SetModifiedFlag

Ändert den geänderten Zustand eines Steuerelements.

void SetModifiedFlag(BOOL bModified = TRUE);

Parameter

bModified
Der neue Wert für das geänderte Kennzeichen des Steuerelements. TRUE gibt an, dass der Zustand des Steuerelements geändert wurde; FALSE gibt an, dass der Status des Steuerelements gerade gespeichert wurde.

Hinweise

Rufen Sie diese Funktion immer dann auf, wenn eine Änderung eintritt, die sich auf den beständigen Zustand Ihres Steuerelements auswirken würde. Wenn sich beispielsweise der Wert einer persistenten Eigenschaft ändert, rufen Sie diese Funktion mit bModifiedTRUE auf.

COleControl::SetNotPermitted

Gibt an, dass eine Bearbeitungsanforderung fehlgeschlagen ist.

void SetNotPermitted();

Hinweise

Rufen Sie diese Funktion auf, wenn BoundPropertyRequestEdit ein Fehler auftritt. Diese Funktion löst eine Ausnahme vom Typ COleDispScodeException aus, um anzugeben, dass der Set-Vorgang nicht zulässig war.

COleControl::SetNotSupported

Verhindert die Änderung des Eigenschaftswerts eines Steuerelements durch den Benutzer.

void SetNotSupported();

Hinweise

Rufen Sie diese Funktion anstelle der Set-Funktion einer Eigenschaft auf, bei der die Änderung des Eigenschaftswerts durch den Benutzer des Steuerelements nicht unterstützt wird. Ein Beispiel wäre eine Eigenschaft, die schreibgeschützt ist.

COleControl::SetRectInContainer

Legt die Koordinaten des Rechtecks des Steuerelements relativ zum Container fest, ausgedrückt in Geräteeinheiten.

BOOL SetRectInContainer(LPCRECT lpRect);

Parameter

lpRect
Ein Zeiger auf ein Rechteck, das die neuen Koordinaten des Steuerelements relativ zum Container enthält.

Rückgabewert

Nonzero, wenn der Anruf erfolgreich war; andernfalls 0.

Hinweise

Wenn das Steuerelement geöffnet ist, wird die Größe geändert. andernfalls wird die Funktion des OnPosRectChanged Containers aufgerufen.

COleControl::SetText

Legt den Wert der Eigenschaft "Caption" oder "Text" des Steuerelements fest.

void SetText(LPCTSTR pszText);

Parameter

pszText
Ein Zeiger auf eine Zeichenfolge.

Hinweise

Beachten Sie, dass die Beschriftungs- und Texteigenschaften der Aktien demselben Wert zugeordnet sind. Dies bedeutet, dass alle Änderungen, die an beiden Eigenschaften vorgenommen wurden, beide Eigenschaften automatisch ändern. Im Allgemeinen sollte ein Steuerelement entweder die Eigenschaft "Stock Caption" oder "Text" unterstützen, aber nicht beides.

COleControl::ThrowError

Signalisiert das Auftreten eines Fehlers in Ihrem Steuerelement.

void ThrowError(
    SCODE sc,
    UINT nDescriptionID,
    UINT nHelpID = -1);

void ThrowError(
    SCODE sc,
    LPCTSTR pszDescription = NULL,
    UINT nHelpID = 0);

Parameter

Sc
Der statuscodewert, der gemeldet werden soll. Eine vollständige Liste der möglichen Codes finden Sie im Artikel ActiveX-Steuerelemente: Erweiterte Themen.

nDescriptionID
Die Zeichenfolgenressourcen-ID der zu meldenden Ausnahme.

nHelpID
Die Hilfe-ID des Themas, zu dem berichtet werden soll.

pszDescription
Eine Zeichenfolge, die eine Erläuterung der zu meldenden Ausnahme enthält.

Hinweise

Diese Funktion sollte nur innerhalb einer Get- oder Set-Funktion für eine OLE-Eigenschaft oder die Implementierung einer OLE-Automatisierungsmethode aufgerufen werden. Wenn Sie Fehler signalisieren müssen, die zu anderen Zeiten auftreten, sollten Sie das Aktienfehlerereignis auslösen.

COleControl::TransformCoords

Transformiert Koordinatenwerte zwischen HIMETRIC-Einheiten und den systemeigenen Einheiten des Containers.

void TransformCoords(
    POINTL* lpptlHimetric,
    POINTF* lpptfContainer,
    DWORD flags);

Parameter

lpptlHimetric
Zeiger auf eine POINTL Struktur, die Koordinaten in HIMETRIC-Einheiten enthält.

lpptfContainer
Zeigen Sie auf eine POINTF Struktur, die Koordinaten in der Einheitengröße des Containers enthält.

flags
Eine Kombination der folgenden Werte:

  • XFORMCOORDS_POSITION Eine Position im Container.

  • XFORMCOORDS_SIZE Eine Größe im Container.

  • XFORMCOORDS_HIMETRICTOCONTAINER Transformieren von HIMETRIC-Einheiten in die Containereinheiten.

  • XFORMCOORDS_CONTAINERTOHIMETRIC Transformieren sie die Einheiten des Containers in HIMETRIC-Einheiten.

Hinweise

Die ersten beiden Flags, XFORMCOORDS_POSITION und XFORMCOORDS_SIZE, geben an, ob die Koordinaten als Position oder Größe behandelt werden sollen. Die neu Standard zwei Flags geben die Richtung der Transformation an.

COleControl::TranslateColor

Konvertiert einen Farbwert aus dem Datentyp OLE_COLOR in den COLORREF-Datentyp .

COLORREF TranslateColor(
    OLE_COLOR clrColor,
    HPALETTE hpal = NULL);

Parameter

clrColor
Ein OLE_COLOR Datentyp. Weitere Informationen finden Sie in der Windows OleTranslateColor-Funktion .

hpal
Ein Handle für eine optionale Palette; kann NULL sein.

Rückgabewert

Ein RGB-32-Bit-Farbwert (Rot, Grün, Blau), der die Volltonfarbe definiert, die dem clrColor-Wert am nächsten kommt, den das Gerät darstellen kann.

Hinweise

Diese Funktion ist nützlich, um die Eigenschaften ForeColor und BackColor in COLORREF-Typen zu übersetzen, die von CDC-Memberfunktionen verwendet werden.

COleControl::WillAmbientsBeValidDuringLoad

Bestimmt, ob das Steuerelement die Werte von Umgebungseigenschaften als Standardwerte verwenden soll, wenn es anschließend aus dem persistenten Zustand geladen wird.

BOOL WillAmbientsBeValidDuringLoad();

Rückgabewert

Nonzero gibt an, dass Umgebungseigenschaften gültig sind; andernfalls sind Umgebungseigenschaften ungültig.

Hinweise

In einigen Containern hat Ihr Steuerelement während des anfänglichen Aufrufs der Außerkraftsetzung COleControl::DoPropExchangemöglicherweise keinen Zugriff auf seine Umgebungseigenschaften. Dies ist der Fall, wenn der Container IPersistStreamInit::Load oder IPersistStorage::Load vor dem Aufrufen von IOleObject::SetClientSite aufruft (d. h., wenn der OLEMISC_SETCLIENTSITEFIRST Statusbit nicht berücksichtigt wird).

COleControl::WindowProc

Stellt eine Windows-Prozedur für ein COleControl Objekt bereit.

virtual LRESULT WindowProc(
    UINT message,
    WPARAM wParam,
    LPARAM lParam);

Parameter

Nachricht
Gibt die Windows-Nachricht an, die verarbeitet werden soll.

wParam
Stellt zusätzliche Informationen bereit, die bei der Verarbeitung der Nachricht verwendet werden. Der Parameterwert hängt von der Nachricht ab.

lParam
Stellt zusätzliche Informationen bereit, die bei der Verarbeitung der Nachricht verwendet werden. Der Parameterwert hängt von der Nachricht ab.

Rückgabewert

Der Rückgabewert der verteilten Nachricht.

Hinweise

Rufen Sie diese Funktion auf, um bestimmte Nachrichten über die Nachrichtenzuordnung des Steuerelements zu verteilen.

Siehe auch

MFC-Beispiel CIRC3
MFC-BeispielTESTHELP
COlePropertyPage-Klasse
CWnd-Klasse
Hierarchiediagramm
CFontHolder-Klasse
CPictureHolder-Klasse