Udostępnij za pośrednictwem


Klasa COleControlSite

Zapewnia obsługę niestandardowych interfejsów sterowania po stronie klienta.

Składnia

class COleControlSite : public CCmdTarget

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
COleControlSite::COleControlSite COleControlSite Tworzy obiekt.

Metody publiczne

Nazwa/nazwisko opis
COleControlSite::BindDefaultProperty Tworzy powiązanie domyślnej właściwości hostowanej kontrolki ze źródłem danych.
COleControlSite::BindProperty Wiąże właściwość hostowanej kontrolki ze źródłem danych.
COleControlSite::CreateControl Tworzy hostowaną kontrolkę ActiveX.
COleControlSite::D estroyControl Niszczy hostowaną kontrolkę.
COleControlSite::D oVerb Wykonuje określone zlecenie hostowanej kontrolki.
COleControlSite::EnableDSC Umożliwia określanie źródła danych dla lokacji sterowania.
COleControlSite::EnableWindow Włącza lokację sterowania.
COleControlSite::FreezeEvents Określa, czy lokacja sterowania akceptuje zdarzenia.
COleControlSite::GetDefBtnCode Pobiera domyślny kod przycisku dla hostowanej kontrolki.
COleControlSite::GetDlgCtrlID Pobiera identyfikator kontrolki.
COleControlSite::GetEventIID Pobiera identyfikator interfejsu zdarzeń dla hostowanej kontrolki.
COleControlSite::GetExStyle Pobiera rozszerzone style lokacji sterowania.
COleControlSite::GetProperty Pobiera określoną właściwość hostowanej kontrolki.
COleControlSite::GetStyle Pobiera style lokacji sterowania.
COleControlSite::GetWindowText Pobiera tekst hostowanej kontrolki.
COleControlSite::InvokeHelper Wywołaj określoną metodę hostowanej kontrolki.
COleControlSite::InvokeHelperV Wywołaj określoną metodę hostowanej kontrolki z listą zmiennych argumentów.
COleControlSite::IsDefaultButton Określa, czy kontrolka jest domyślnym przyciskiem w oknie.
COleControlSite::IsWindowEnabled Sprawdza widoczny stan lokacji sterowania.
COleControlSite::ModifyStyle Modyfikuje bieżące rozszerzone style witryny sterowania.
COleControlSite::ModifyStyleEx Modyfikuje bieżące style witryny sterowania.
COleControlSite::MoveWindow Zmienia położenie lokacji sterowania.
COleControlSite::QuickActivate Szybkie aktywowanie hostowanej kontrolki.
COleControlSite::SafeSetProperty Ustawia właściwość lub metodę kontrolki bez możliwości zgłaszania wyjątku.
COleControlSite::SetDefaultButton Ustawia przycisk domyślny w oknie.
COleControlSite::SetDlgCtrlID Pobiera identyfikator kontrolki.
COleControlSite::SetFocus Ustawia fokus na lokację sterowania.
COleControlSite::SetProperty Ustawia określoną właściwość hostowanej kontrolki.
COleControlSite::SetPropertyV Ustawia określoną właściwość hostowanej kontrolki z listą zmiennych argumentów.
COleControlSite::SetWindowPos Ustawia położenie lokacji sterowania.
COleControlSite::SetWindowText Ustawia tekst hostowanej kontrolki.
COleControlSite::ShowWindow Wyświetla lub ukrywa lokację sterowania.

Metody chronione

Nazwa/nazwisko opis
COleControlSite::GetControlInfo Pobiera informacje o klawiaturze i mnemonics dla hostowanej kontrolki.

Publiczne elementy członkowskie danych

Nazwa/nazwisko opis
COleControlSite::m_bIsWindowless Określa, czy hostowana kontrolka jest kontrolką bez okien.
COleControlSite::m_ctlInfo Zawiera informacje na temat obsługi klawiatury dla kontrolki.
COleControlSite::m_dwEventSink Plik cookie punktu połączenia kontrolki.
COleControlSite::m_dwMiscStatus Różne stany dla hostowanej kontrolki.
COleControlSite::m_dwPropNotifySink IPropertyNotifySink Plik cookie kontrolki.
COleControlSite::m_dwStyle Style hostowanej kontrolki.
COleControlSite::m_hWnd Uchwyt lokacji sterowania.
COleControlSite::m_iidEvents Identyfikator interfejsu zdarzeń dla hostowanej kontrolki.
COleControlSite::m_nID Identyfikator hostowanej kontrolki.
COleControlSite::m_pActiveObject Wskaźnik do IOleInPlaceActiveObject obiektu hostowanej kontrolki.
COleControlSite::m_pCtrlCont Kontener hostowanej kontrolki.
COleControlSite::m_pInPlaceObject Wskaźnik do IOleInPlaceObject obiektu hostowanej kontrolki.
COleControlSite::m_pObject Wskaźnik do IOleObjectInterface interfejsu kontrolki.
COleControlSite::m_pWindowlessObject Wskaźnik do IOleInPlaceObjectWindowless interfejsu kontrolki.
COleControlSite::m_pWndCtrl Wskaźnik do obiektu okna dla hostowanej kontrolki.
COleControlSite::m_rect Wymiary lokacji sterowania.

Uwagi

Ta obsługa jest podstawowym sposobem, za pomocą którego osadzona kontrolka ActiveX uzyskuje informacje o lokalizacji i zakresie jego witryny wyświetlania, jego pseudonimie, interfejsie użytkownika, właściwościach otoczenia i innych zasobach dostarczonych przez kontener. COleControlSitew pełni implementuje interfejsy IOleControlSite, IOleInPlaceSite, IOleClientSite, IPropertyNotifySink, IBoundObjectSite, INotifyDBEvents, IRowSetNotify. Ponadto interfejs IDispatch (zapewniający obsługę właściwości otoczenia i ujścia zdarzeń) jest również implementowany.

Aby utworzyć lokację kontrolki ActiveX przy użyciu metody COleControlSite, utwórz klasę z COleControlSiteklasy . CWndW klasie -pochodnej dla kontenera (na przykład okno dialogowe) przesłaniaj CWnd::CreateControlSite funkcję.

Hierarchia dziedziczenia

Obiekt CObject

CCmdTarget

COleControlSite

Wymagania

Nagłówek: afxocc.h

COleControlSite::BindDefaultProperty

Tworzy powiązanie domyślnej prostej właściwości powiązanego obiektu wywołującego, oznaczonej w bibliotece typów, do bazowego kursora zdefiniowanego przez właściwości DataSource, UserName, Password i SQL kontrolki źródła danych.

virtual void BindDefaultProperty(
    DISPID dwDispID,
    VARTYPE vtProp,
    LPCTSTR szFieldName,
    CWnd* pDSCWnd);

Parametry

dwDispID
Określa DISPID właściwości w kontrolce powiązanej z danymi, która ma być powiązana z kontrolką źródła danych.

vtProp
Określa typ właściwości, która ma być powiązana — na przykład VT_BSTR, VT_VARIANT itd.

szFieldName
Określa nazwę kolumny w kursorze dostarczonym przez kontrolkę źródła danych, z którą będzie powiązana właściwość.

pDSCWnd
Wskaźnik do CWnd-pochodnego obiektu, który hostuje kontrolkę źródła danych, do której będzie powiązana właściwość.

Uwagi

Obiekt CWnd , na którym wywołujesz tę funkcję, musi być formantem powiązanym z danymi.

COleControlSite::BindProperty

Tworzy powiązanie prostej właściwości powiązanego obiektu wywołującego, oznaczonej w bibliotece typów, do bazowego kursora zdefiniowanego przez właściwości DataSource, UserName, Password i SQL kontrolki źródła danych.

virtual void BindProperty(
    DISPID dwDispId,
    CWnd* pWndDSC);

Parametry

dwDispId
Określa DISPID właściwości w kontrolce powiązanej z danymi, która ma być powiązana z kontrolką źródła danych.

pWndDSC
Wskaźnik do CWnd-pochodnego obiektu, który hostuje kontrolkę źródła danych, do której będzie powiązana właściwość.

Uwagi

Obiekt CWnd , na którym wywołujesz tę funkcję, musi być formantem powiązanym z danymi.

COleControlSite::COleControlSite

Tworzy nowy COleControlSite obiekt.

explicit COleControlSite(COleControlContainer* pCtrlCont);

Parametry

pCtrlCont
Wskaźnik do kontenera kontrolki (który reprezentuje okno hostujące kontrolkę AtiveX).

Uwagi

Ta funkcja jest wywoływana przez funkcję COccManager::CreateContainer . Aby uzyskać więcej informacji na temat dostosowywania tworzenia kontenerów, zobacz COccManager::CreateSite.

COleControlSite::CreateControl

Tworzy kontrolkę ActiveX hostowaną COleControlSite przez obiekt.

virtual HRESULT CreateControl(
    CWnd* pWndCtrl,
    REFCLSID clsid,
    LPCTSTR lpszWindowName,
    DWORD dwStyle,
    const RECT& rect,
    UINT nID,
    CFile* pPersist = NULL,
    BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL);

virtual HRESULT CreateControl(
    CWnd* pWndCtrl,
    REFCLSID clsid,
    LPCTSTR lpszWindowName,
    DWORD dwStyle,
    const POINT* ppt,
    const SIZE* psize,
    UINT nID,
    CFile* pPersist = NULL,
    BOOL bStorage = FALSE,
    BSTR bstrLicKey = NULL);

Parametry

pWndCtrl
Wskaźnik do obiektu okna reprezentującego kontrolkę.

clsid
Unikatowy identyfikator klasy kontrolki.

lpszWindowName
Wskaźnik do tekstu, który ma być wyświetlany w kontrolce. Ustawia wartość właściwości Caption lub Text winadw (jeśli istnieje).

dwStyle
Style systemu Windows. Dostępne style są wymienione w sekcji Uwagi .

Rect
Określa rozmiar i położenie kontrolki. Może to być CRect obiekt lub RECT struktura.

Nid
Określa identyfikator okna podrzędnego kontrolki.

pPersist
Wskaźnik zawierający CFile stan trwały dla kontrolki. Wartość domyślna to NULL, co oznacza, że kontrolka inicjuje się bez przywracania stanu z dowolnego magazynu trwałego. Jeśli nie ma wartości NULL, powinien to być wskaźnik do obiektu pochodnego CFilezawierającego trwałe dane kontrolki w postaci strumienia lub magazynu. Te dane mogły zostać zapisane w poprzedniej aktywacji klienta. Element CFile może zawierać inne dane, ale musi mieć ustawiony wskaźnik odczytu i zapisu na pierwszy bajt danych trwałych w momencie wywołania metody CreateControl.

bStorage
Wskazuje, czy dane w narzędziu pPersist powinny być interpretowane jako IStorage lub IStream dane. Jeśli dane w narzędziu pPersist są magazynem, funkcja bStorage powinna mieć wartość TRUE. Jeśli dane w narzędziu pPersist są strumieniem, funkcja bStorage powinna mieć wartość FALSE. Wartość domyślna to FALSE.

bstrLicKey
Opcjonalne dane klucza licencji. Te dane są potrzebne tylko do tworzenia kontrolek, które wymagają klucza licencji w czasie wykonywania. Jeśli kontrolka obsługuje licencjonowanie, musisz podać klucz licencji, aby tworzenie kontrolki powiodło się. Wartość domyślna to NULL.

Ppt
Wskaźnik do POINT struktury zawierającej lewy górny róg kontrolki. Rozmiar kontrolki jest określany przez wartość psize. Wartości ppt i psize są opcjonalną metodą określania rozmiaru i położenia kontrolki.

rozmiar psize
Wskaźnik do SIZE struktury zawierającej rozmiar kontrolki. Lewy górny róg jest określany przez wartość ppt. Wartości ppt i psize są opcjonalną metodą określania rozmiaru i położenia kontrolki.

Wartość zwracana

Standardowa wartość HRESULT.

Uwagi

Obsługiwane są tylko podzestaw flagi Windows dwStyle:CreateControl

  • WS_VISIBLE Tworzy okno, które jest początkowo widoczne. Wymagane, jeśli kontrolka ma być widoczna natychmiast, na przykład zwykłe okna.

  • WS_DISABLED Tworzy okno, które jest początkowo wyłączone. Wyłączone okno nie może odbierać danych wejściowych od użytkownika. Można ustawić, jeśli kontrolka ma właściwość Enabled.

  • WS_BORDER Tworzy okno z obramowaniem cienkim. Można ustawić, jeśli kontrolka ma właściwość BorderStyle.

  • WS_GROUP Określa pierwszą kontrolkę grupy kontrolek. Użytkownik może zmienić fokus klawiatury z jednej kontrolki w grupie na następną, używając kierunkowych. Wszystkie kontrolki zdefiniowane za pomocą stylu WS_GROUP po pierwszym kontrolce należą do tej samej grupy. Następna kontrolka ze stylem WS_GROUP kończy grupę i uruchamia następną grupę.

  • WS_TABSTOP Określa kontrolkę, która może odbierać fokus klawiatury, gdy użytkownik naciska TAB. Naciśnięcie TAB powoduje zmianę fokusu klawiatury na następną kontrolkę stylu WS_TABSTOP.

Użyj drugiego przeciążenia, aby utworzyć kontrolki o domyślnym rozmiarze.

COleControlSite::D estroyControl

COleControlSite Niszczy obiekt.

virtual BOOL DestroyControl();

Wartość zwracana

Jeśli operacja niezerowa zakończyła się powodzeniem, w przeciwnym razie 0.

Uwagi

Po zakończeniu obiekt jest zwalniany z pamięci, a wszystkie wskaźniki do obiektu nie są już prawidłowe.

COleControlSite::D oVerb

Wykonuje określone zlecenie.

virtual HRESULT DoVerb(
    LONG nVerb,
    LPMSG lpMsg = NULL);

Parametry

nVerb
Określa czasownik do wykonania. Może zawierać jedną z następujących opcji:

Wartość Znaczenie Symbol
0 Primary — Zlecenie OLEIVERB_PRIMARY
-1 Czasownik pomocniczy (Brak)
1 Wyświetla obiekt do edycji. OLEIVERB_SHOW
-2 Edytuje element w osobnym oknie. OLEIVERB_OPEN
–3 Ukrywa obiekt. OLEIVERB_HIDE
-4 Aktywuje kontrolkę w miejscu. OLEIVERB_UIACTIVATE
-5 Aktywuje kontrolkę w miejscu bez dodatkowych elementów interfejsu użytkownika. OLEIVERB_INPLACEACTIVATE
7\. Wyświetl właściwości kontrolki. OLEIVERB_PROPERTIES

lpMsg
Wskaźnik do komunikatu, który spowodował aktywowanie elementu.

Wartość zwracana

Standardowa wartość HRESULT.

Uwagi

Ta funkcja bezpośrednio wywołuje interfejs kontrolki IOleObject w celu wykonania określonego zlecenia. Jeśli w wyniku tego wywołania funkcji zostanie zgłoszony wyjątek, zostanie zwrócony kod błędu HRESULT.

Aby uzyskać więcej informacji, zobacz IOleObject::D oVerb w zestawie Windows SDK.

COleControlSite::EnableDSC

Włącza określanie źródła danych dla lokacji sterowania.

virtual void EnableDSC();

Uwagi

Wywoływana przez platformę w celu włączenia i zainicjowania określania źródła danych dla lokacji sterowania. Zastąpi tę funkcję, aby zapewnić dostosowane zachowanie.

COleControlSite::EnableWindow

Włącza lub wyłącza wprowadzanie myszy i klawiatury w lokacji sterowania.

virtual BOOL EnableWindow(BOOL bEnable);

Parametry

bEnable
Określa, czy należy włączyć lub wyłączyć okno: PRAWDA, jeśli dane wejściowe okna mają być włączone, w przeciwnym razie FALSE.

Wartość zwracana

Nonzero, jeśli okno zostało wcześniej wyłączone, w przeciwnym razie 0.

COleControlSite::FreezeEvents

Określa, czy lokacja sterowania będzie obsługiwać lub ignorować zdarzenia wyzwalane z kontrolki.

void FreezeEvents(BOOL bFreeze);

Parametry

bFreeze
Określa, czy lokacja sterowania chce zatrzymać akceptowanie zdarzeń. Niezerowe, jeśli kontrolka nie akceptuje zdarzeń; w przeciwnym razie zero.

Uwagi

Jeśli parametr bFreeze ma wartość TRUE, lokacja sterowania żąda kontrolki, aby zatrzymać wyzwalanie zdarzeń. Jeśli parametr bFreeze ma wartość FALSE, lokacja sterowania żąda od kontrolki kontynuowania wyzwalania zdarzeń.

Uwaga

Kontrolka nie jest wymagana do zatrzymania wyzwalania zdarzeń, jeśli jest to wymagane przez lokację sterowania. Może on kontynuować uruchamianie, ale wszystkie kolejne zdarzenia zostaną zignorowane przez lokację sterowania.

COleControlSite::GetControlInfo

Pobiera informacje o mnemonics i zachowaniu klawiatury kontrolki.

void GetControlInfo();

Uwagi

Informacje są przechowywane w COleControlSite ::m_ctlInfo.

COleControlSite::GetDefBtnCode

Określa, czy kontrolka jest domyślnym przyciskiem wypychania.

DWORD GetDefBtnCode();

Wartość zwracana

Może być jedną z następujących wartości:

  • DLGC_DEFPUSHBUTTON Control jest domyślnym przyciskiem w oknie dialogowym.

  • DLGC_UNDEFPUSHBUTTON Kontrolka nie jest domyślnym przyciskiem w oknie dialogowym.

  • 0 Kontrolka nie jest przyciskiem.

COleControlSite::GetDlgCtrlID

Pobiera identyfikator kontrolki.

virtual int GetDlgCtrlID() const;

Wartość zwracana

Identyfikator elementu okna dialogowego kontrolki.

COleControlSite::GetEventIID

Pobiera wskaźnik do domyślnego interfejsu zdarzeń kontrolki.

BOOL GetEventIID(IID* piid);

Parametry

piid
Wskaźnik do identyfikatora interfejsu.

Wartość zwracana

Jeśli operacja niezerowa zakończyła się powodzeniem, w przeciwnym razie 0. Jeśli to się powiedzie, identyfikator piid zawiera identyfikator interfejsu domyślnego interfejsu zdarzenia kontrolki.

COleControlSite::GetExStyle

Pobiera style rozszerzone okna.

virtual DWORD GetExStyle() const;

Wartość zwracana

Rozszerzone style okna sterowania.

Uwagi

Aby pobrać zwykłe style, wywołaj metodę COleControlSite::GetStyle.

COleControlSite::GetProperty

Pobiera właściwość kontrolki określoną przez dwDispID.

virtual void GetProperty(
    DISPID dwDispID,
    VARTYPE vtProp,
    void* pvProp) const;

Parametry

dwDispID
Identyfikuje identyfikator wysyłki właściwości znalezionej w domyślnym IDispatch interfejsie kontrolki do pobrania.

vtProp
Określa typ właściwości do pobrania. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dla COleDispatchDriver::InvokeHelper.

pvProp
Adres zmiennej, która otrzyma wartość właściwości. Musi być zgodny z typem określonym przez vtProp.

Uwagi

Wartość jest zwracana za pośrednictwem pvProp.

COleControlSite::GetStyle

Pobiera style lokacji sterowania.

virtual DWORD GetStyle() const;

Wartość zwracana

Style okna.

Uwagi

Aby uzyskać listę możliwych wartości, zobacz Style systemu Windows. Aby pobrać rozszerzone style lokacji sterowania, wywołaj metodę COleControlSite::GetExStyle.

COleControlSite::GetWindowText

Pobiera bieżący tekst kontrolki.

virtual void GetWindowText(CString& str) const;

Parametry

Str
Odwołanie do CString obiektu zawierającego bieżący tekst kontrolki.

Uwagi

Jeśli kontrolka obsługuje właściwość Stock Caption, ta wartość jest zwracana. Jeśli właściwość stock podpisów nie jest obsługiwana, zwracana jest wartość właściwości Text.

COleControlSite::InvokeHelper

Wywołuje metodę lub właściwość określoną przez dwDispID w kontekście określonym przez wFlags.

virtual void AFX_CDECL InvokeHelper(
    DISPID dwDispID,
    WORD wFlags,
    VARTYPE vtRet,
    void* pvRet,
    const BYTE* pbParamInfo, ...);

Parametry

dwDispID
Identyfikuje identyfikator wysyłania właściwości lub metody, która ma zostać wywołana w interfejsie kontrolki IDispatch .

opóźnienia wFlags
Flagi opisujące kontekst wywołania funkcji IDispatch::Invoke. Aby uzyskać możliwe wartości wFlags , zobacz IDispatch::Invoke w zestawie Windows SDK.

vtRet
Określa typ wartości zwracanej. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dla COleDispatchDriver::InvokeHelper.

pvRet
Adres zmiennej, która otrzyma wartość właściwości lub wartość zwracaną. Musi być zgodny z typem określonym przez vtRet.

pbParamInfo
Wskaźnik do ciągu zakończonych wartości null bajtów określających typy parametrów po pbParamInfo. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dla COleDispatchDriver::InvokeHelper.

...
Lista zmiennych parametrów typów określonych w pliku pbParamInfo.

Uwagi

Parametr pbParamInfo określa typy parametrów przekazywanych do metody lub właściwości. Lista zmiennych argumentów jest reprezentowana przez ... w deklaracji składni.

Ta funkcja konwertuje parametry na wartości VARIANTARG, a następnie wywołuje metodę IDispatch::Invoke w kontrolce. Jeśli wywołanie nie powiedzie się IDispatch::Invoke , ta funkcja zgłosi wyjątek. Jeśli kod stanu zwrócony przez IDispatch::Invoke element to DISP_E_EXCEPTION, ta funkcja zgłasza COleDispatchException obiekt, w przeciwnym razie zgłasza element COleException.

COleControlSite::InvokeHelperV

Wywołuje metodę lub właściwość określoną przez dwDispID w kontekście określonym przez wFlags.

virtual void InvokeHelperV(
    DISPID dwDispID,
    WORD wFlags,
    VARTYPE vtRet,
    void* pvRet,
    const BYTE* pbParamInfo,
    va_list argList);

Parametry

dwDispID
Identyfikuje identyfikator wysyłania właściwości lub metody, która ma zostać wywołana w interfejsie kontrolki IDispatch .

opóźnienia wFlags
Flagi opisujące kontekst wywołania funkcji IDispatch::Invoke.

vtRet
Określa typ wartości zwracanej. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dla COleDispatchDriver::InvokeHelper.

pvRet
Adres zmiennej, która otrzyma wartość właściwości lub wartość zwracaną. Musi być zgodny z typem określonym przez vtRet.

pbParamInfo
Wskaźnik do ciągu zakończonych wartości null bajtów określających typy parametrów po pbParamInfo. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dla COleDispatchDriver::InvokeHelper.

argList
Wskaźnik do listy argumentów zmiennej.

Uwagi

Parametr pbParamInfo określa typy parametrów przekazywanych do metody lub właściwości. Dodatkowe parametry wywoływanej metody lub właściwości można przekazać przy użyciu parametru va_list .

Zazwyczaj ta funkcja jest wywoływana przez COleControlSite::InvokeHelperfunkcję .

COleControlSite::IsDefaultButton

Określa, czy kontrolka jest przyciskiem domyślnym.

BOOL IsDefaultButton();

Wartość zwracana

Nonzero, jeśli kontrolka jest domyślnym przyciskiem w oknie, w przeciwnym razie zero.

COleControlSite::IsWindowEnabled

Określa, czy lokacja sterowania jest włączona.

virtual BOOL IsWindowEnabled() const;

Wartość zwracana

Nonzero, jeśli kontrolka jest włączona, w przeciwnym razie zero.

Uwagi

Wartość jest pobierana z właściwości akcji Włączone kontrolki.

COleControlSite::m_bIsWindowless

Określa, czy obiekt jest kontrolką bez okien.

BOOL m_bIsWindowless;

Uwagi

Nonzero, jeśli kontrolka nie ma okna, w przeciwnym razie zero.

COleControlSite::m_ctlInfo

Informacje na temat sposobu obsługi wprowadzania za pomocą klawiatury przez kontrolkę.

CONTROLINFO m_ctlInfo;

Uwagi

Te informacje są przechowywane w strukturze CONTROLINFO .

COleControlSite::m_dwEventSink

Zawiera plik cookie punktu połączenia z ujścia zdarzeń kontrolki.

DWORD m_dwEventSink;

COleControlSite::m_dwMiscStatus

Zawiera różne informacje o kontrolce.

DWORD m_dwMiscStatus;

Uwagi

Aby uzyskać więcej informacji, zobacz OLEMISCw zestawie Windows SDK.

COleControlSite::m_dwPropNotifySink

Zawiera plik cookie IPropertyNotifySink.

DWORD m_dwPropNotifySink;

COleControlSite::m_dwStyle

Zawiera style okna kontrolki.

DWORD m_dwStyle;

COleControlSite::m_hWnd

Zawiera HWND kontrolki lub wartość NULL, jeśli kontrolka jest bez okna.

HWND m_hWnd;

COleControlSite::m_iidEvents

Zawiera identyfikator interfejsu domyślnego interfejsu ujścia zdarzeń kontrolki.

IID m_iidEvents;

COleControlSite::m_nID

Zawiera identyfikator elementu okna dialogowego kontrolki.

UINT m_nID;

COleControlSite::m_pActiveObject

Zawiera interfejs IOleInPlaceActiveObject kontrolki.

LPOLEINPLACEACTIVEOBJECT m_pActiveObject;

COleControlSite::m_pCtrlCont

Zawiera kontener kontrolki (reprezentujący formularz).

COleControlContainer* m_pCtrlCont;

COleControlSite::m_pInPlaceObject

IOleInPlaceObject Zawiera interfejs IOleInPlaceObject kontrolki.

LPOLEINPLACEOBJECT m_pInPlaceObject;

COleControlSite::m_pObject

IOleObjectInterface Zawiera interfejs kontrolki.

LPOLEOBJECT m_pObject;

COleControlSite::m_pWindowlessObject

IOleInPlaceObjectWindowlessZawiera interfejs IOleInPlaceObjectWindowless kontrolki.

IOleInPlaceObjectWindowless* m_pWindowlessObject;

COleControlSite::m_pWndCtrl

Zawiera wskaźnik do CWnd obiektu, który reprezentuje samą kontrolkę.

CWnd* m_pWndCtrl;

COleControlSite::m_rect

Zawiera granice kontrolki względem okna kontenera.

CRect m_rect;

COleControlSite::ModifyStyle

Modyfikuje style kontrolki.

virtual BOOL ModifyStyle(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags);

Parametry

dwRemove
Style, które mają zostać usunięte z bieżących stylów okna.

dwAdd
Style, które mają zostać dodane z bieżących stylów okna.

nFlags
Flagi pozycjonowania okien. Aby uzyskać listę możliwych wartości, zobacz funkcję SetWindowPos w zestawie Windows SDK.

Wartość zwracana

Nonzero, jeśli style są zmieniane, w przeciwnym razie zero.

Uwagi

Właściwość Stock Enabled kontrolki zostanie zmodyfikowana tak, aby odpowiadała ustawieniu dla WS_DISABLED. Właściwość Styl obramowania akcji kontrolki zostanie zmodyfikowana tak, aby odpowiadała żądanemu ustawieniu dla WS_BORDER. Wszystkie inne style są stosowane bezpośrednio do uchwytu okna kontrolki, jeśli istnieje.

Modyfikuje style okna kontrolki. Style do dodania lub usunięcia można połączyć za pomocą operatora bitowego OR (|). Zobacz funkcję CreateWindow w zestawie Windows SDK, aby uzyskać informacje o dostępnych stylach okien.

Jeśli nFlags jest nonzero, ModifyStyle wywołuje funkcję SetWindowPosWin32 i ponownie rysuje okno, łącząc nFlags z następującymi czterema flagami:

  • SWP_NOSIZE Zachowuje bieżący rozmiar.

  • SWP_NOMOVE Zachowuje bieżące położenie.

  • SWP_NOZORDER zachowuje bieżące zamówienie Z.

  • SWP_NOACTIVATE Nie aktywuje okna.

Aby zmodyfikować style rozszerzone okna, wywołaj metodę ModifyStyleEx.

COleControlSite::ModifyStyleEx

Modyfikuje rozszerzone style kontrolki.

virtual BOOL ModifyStyleEx(
    DWORD dwRemove,
    DWORD dwAdd,
    UINT nFlags);

Parametry

dwRemove
Style rozszerzone, które mają zostać usunięte z bieżących stylów okna.

dwAdd
Style rozszerzone, które mają zostać dodane z bieżących stylów okna.

nFlags
Flagi pozycjonowania okien. Aby uzyskać listę możliwych wartości, zobacz funkcję SetWindowPos w zestawie Windows SDK.

Wartość zwracana

Nonzero, jeśli style są zmieniane, w przeciwnym razie zero.

Uwagi

Właściwość wyglądu kontrolki zostanie zmodyfikowana tak, aby odpowiadała ustawieniu WS_EX_CLIENTEDGE. Wszystkie inne style okien rozszerzonych są stosowane bezpośrednio do uchwytu okna kontrolki, jeśli jest obecny.

Modyfikuje rozszerzone style okna obiektu lokacji sterowania. Style do dodania lub usunięcia można połączyć za pomocą operatora bitowego OR (|). Aby uzyskać informacje na temat dostępnych stylów okna, zobacz funkcję CreateWindowEx w zestawie Windows SDK.

Jeśli nFlags jest nonzero, ModifyStyleEx wywołuje funkcję SetWindowPosWin32 i ponownie rysuje okno, łącząc nFlags z następującymi czterema flagami:

  • SWP_NOSIZE Zachowuje bieżący rozmiar.

  • SWP_NOMOVE Zachowuje bieżące położenie.

  • SWP_NOZORDER zachowuje bieżące zamówienie Z.

  • SWP_NOACTIVATE Nie aktywuje okna.

Aby zmodyfikować style rozszerzone okna, wywołaj metodę ModifyStyle.

COleControlSite::MoveWindow

Zmienia położenie kontrolki.

virtual void MoveWindow(
    int x,
    int y,
    int nWidth,
    int nHeight);

Parametry

x
Nowe położenie lewej strony okna.

y
Nowa pozycja górnej części okna.

nWidth
Nowa szerokość okna

nHeight
Nowa wysokość okna.

COleControlSite::QuickActivate

Szybkie aktywowanie zawartej kontrolki.

virtual BOOL QuickActivate();

Wartość zwracana

Niezero, jeśli lokacja sterowania została aktywowana, w przeciwnym razie zero.

Uwagi

Ta funkcja powinna być wywoływana tylko wtedy, gdy użytkownik zastępuje proces tworzenia kontrolki.

Metody IPersist*::Load i IPersist*::InitNew powinny być wywoływane po szybkiej aktywacji. Kontrolka powinna ustanowić połączenia z ujściami kontenera podczas szybkiej aktywacji. Jednak te połączenia nie są aktywne do czasu IPersist*::Load wywołania lub IPersist*::InitNew zostały wywołane.

COleControlSite::SafeSetProperty

Ustawia właściwość kontrolki określoną przez dwDispID.

virtual BOOL AFX_CDECL SafeSetProperty(
    DISPID dwDispID,
    VARTYPE vtProp, ...);

Parametry

dwDispID
Identyfikuje identyfikator wysyłania właściwości lub metody, który ma zostać ustawiony w interfejsie kontrolki IDispatch .

vtProp
Określa typ właściwości do ustawienia. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dla COleDispatchDriver::InvokeHelper.

...
Pojedynczy parametr typu określony przez vtProp.

Wartość zwracana

Bezzerowe, jeśli się powiedzie; w przeciwnym razie zero.

Uwagi

Uwaga

W przeciwieństwie do SetProperty i SetPropertyV, jeśli wystąpi błąd (na przykład próba ustawienia nieistniejących właściwości), nie zostanie zgłoszony wyjątek.

COleControlSite::SetDefaultButton

Ustawia kontrolkę jako przycisk domyślny.

void SetDefaultButton(BOOL bDefault);

Parametry

bDefault
Nonzero, jeśli kontrolka powinna stać się przyciskiem domyślnym; w przeciwnym razie zero.

Uwagi

Uwaga

Kontrolka musi mieć zestaw bitów stanu OLEMISC_ACTSLIKEBUTTON.

COleControlSite::SetDlgCtrlID

Zmienia wartość identyfikatora elementu okna dialogowego kontrolki.

virtual int SetDlgCtrlID(int nID);

Parametry

Nid
Nowa wartość identyfikatora.

Wartość zwracana

Jeśli to się powiedzie, poprzedni identyfikator elementu okna dialogowego; w przeciwnym razie 0.

Uwagi

COleControlSite::SetFocus

Ustawia fokus na kontrolkę.

virtual CWnd* SetFocus();
virtual CWnd* SetFocus(LPMSG lpmsg);

Parametry

lpmsg
Wskaźnik do struktury MSG. Ta struktura zawiera komunikat systemu Windows wyzwalający SetFocus żądanie kontrolki zawartej w bieżącej lokacji sterowania.

Wartość zwracana

Wskaźnik do okna, który wcześniej miał fokus.

COleControlSite::SetProperty

Ustawia właściwość kontrolki określoną przez dwDispID.

virtual void AFX_CDECL SetProperty(
    DISPID dwDispID,
    VARTYPE vtProp, ...);

Parametry

dwDispID
Identyfikuje identyfikator wysyłania właściwości lub metody, który ma zostać ustawiony w interfejsie kontrolki IDispatch .

vtProp
Określa typ właściwości do ustawienia. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dla COleDispatchDriver::InvokeHelper.

...
Pojedynczy parametr typu określony przez vtProp.

Uwagi

Jeśli SetProperty wystąpi błąd, zostanie zgłoszony wyjątek.

Typ wyjątku jest określany przez wartość zwracaną próby ustawienia właściwości lub metody. Jeśli zwracana wartość to DISP_E_EXCEPTION, COleDispatchExcpetion wartość jest zgłaszana; w przeciwnym razie wartość COleException.

COleControlSite::SetPropertyV

Ustawia właściwość kontrolki określoną przez dwDispID.

virtual void SetPropertyV(
    DISPID dwDispID,
    VARTYPE vtProp,
    va_list argList);

Parametry

dwDispID
Identyfikuje identyfikator wysyłania właściwości lub metody, który ma zostać ustawiony w interfejsie kontrolki IDispatch .

vtProp
Określa typ właściwości do ustawienia. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dla COleDispatchDriver::InvokeHelper.

argList
Wskaźnik do listy argumentów.

Uwagi

Dodatkowe parametry metody lub właściwości wywoływanej można przekazać przy użyciu parametru arg_list . Jeśli SetProperty wystąpi błąd, zostanie zgłoszony wyjątek.

Typ wyjątku jest określany przez wartość zwracaną próby ustawienia właściwości lub metody. Jeśli zwracana wartość to DISP_E_EXCEPTION, COleDispatchExcpetion wartość jest zgłaszana; w przeciwnym razie wartość COleException.

COleControlSite::SetWindowPos

Ustawia rozmiar, położenie i kolejność Z lokacji sterowania.

virtual BOOL SetWindowPos(
    const CWnd* pWndInsertAfter,
    int x,
    int y,
    int cx,
    int cy,
    UINT nFlags);

Parametry

pWndInsertAfter
Wskaźnik do okna.

x
Nowe położenie lewej strony okna.

y
Nowa pozycja górnej części okna.

cx
Nowa szerokość okna

Cy
Nowa wysokość okna.

nFlags
Określa flagi określania rozmiaru i pozycjonowania okna. Aby uzyskać możliwe wartości, zobacz sekcję Uwagi dotyczące setWindowPos w zestawie Windows SDK.

Wartość zwracana

Bezzerowe, jeśli się powiedzie, w przeciwnym razie zero.

COleControlSite::SetWindowText

Ustawia tekst dla lokacji sterowania.

virtual void SetWindowText(LPCTSTR lpszString);

Parametry

lpszString
Wskaźnik do ciągu zakończonego wartością null, który ma być używany jako nowy tekst tytułu lub kontrolki.

Uwagi

Ta funkcja najpierw próbuje ustawić właściwość Stock Caption. Jeśli właściwość Stock Caption nie jest obsługiwana, właściwość Text jest ustawiona.

COleControlSite::ShowWindow

Ustawia stan pokazywania okna.

virtual BOOL ShowWindow(int nCmdShow);

Parametry

nCmdShow
Określa sposób wyświetlania lokacji sterowania. Musi to być jedna z następujących wartości:

  • SW_HIDE Ukrywa to okno i przekazuje aktywację do innego okna.

  • SW_MINIMIZE Minimalizuje okno i aktywuje okno najwyższego poziomu na liście systemu.

  • SW_RESTORE Aktywuje i wyświetla okno. Jeśli okno zostanie zminimalizowane lub zmaksymalizowane, system Windows przywróci go do oryginalnego rozmiaru i położenia.

  • SW_SHOW Aktywuje okno i wyświetla go w bieżącym rozmiarze i pozycji.

  • SW_SHOWMAXIMIZED Aktywuje okno i wyświetla je jako zmaksymalizowane okno.

  • SW_SHOWMINIMIZED Aktywuje okno i wyświetla je jako ikonę.

  • SW_SHOWMINNOACTIVE Wyświetla okno jako ikonę. Okno, które jest obecnie aktywne, pozostaje aktywne.

  • SW_SHOWNA Wyświetla okno w bieżącym stanie. Okno, które jest obecnie aktywne, pozostaje aktywne.

  • SW_SHOWNOACTIVATE Wyświetla okno w najnowszym rozmiarze i pozycji. Okno, które jest obecnie aktywne, pozostaje aktywne.

  • SW_SHOWNORMAL Aktywuje i wyświetla okno. Jeśli okno zostanie zminimalizowane lub zmaksymalizowane, system Windows przywróci go do oryginalnego rozmiaru i położenia.

Wartość zwracana

Niezerowe, jeśli okno było wcześniej widoczne; 0, jeśli okno zostało wcześniej ukryte.

Zobacz też

Klasa CCmdTarget
Wykres hierarchii
Klasa COleControlContainer