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). COleControl
Die 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
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 oder im gleichen Format verwaltet werden sollen, 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::DoPropExchange
eines 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 OnKeyPressEvent
Sie 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. COleControl
Die 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 IPointerInactive
empfä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 GetActivationPolicy
ausgelö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 IPointerInactive
wird, 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 COleControl die 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, das vom Container verwaltet wird, der das Steuerelement mit einem erweiterten Satz 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. GetFontTextMetrics
Initialisieren Sie die Struktur, auf die TEXTMETRIC
lptm verweist, mit gültigen Metrikinformationen über fontHolder
die 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. Zum 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, bleibt der Hintergrund unverändert.
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.
Stütze
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. Zum 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::OnGetPredefinedStrings
wurden.
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
GetViewExtent
dem 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
Wird 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 OnRenderGlobalData
Sie dies. Wenn sich Die Daten in einer Datei befinden oder eine variable Größe aufweisen, überschreiben OnRenderFileData
Sie 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 OnRenderData
Sie diese. Wenn sich Die Daten in einer Datei befinden oder eine variable Größe aufweisen, überschreiben OnRenderFileData
Sie 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 OnRenderData
Sie diese. Wenn sich Die Daten in einer Datei befinden oder eine variable Größe aufweisen, überschreiben OnRenderFileData
Sie 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 OnWindowMessage
IOleInPlaceObjectWindowless
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 SerializeExtent
von , SerializeStockProps
und 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 SerializeStockProps
von , SerializeExtent
und 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 oder im gleichen Format wie beim Laden beibehalten werden sollen.
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 SerializeVersion
von , SerializeExtent
und 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 bModified TRUE 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 verbleibenden beiden 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::DoPropExchange
mö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