Udostępnij za pośrednictwem


Klasa COccManager

Zarządza różnymi niestandardowymi witrynami kontroli; zaimplementowane przez COleControlContainer obiekty i .COleControlSite

Składnia

class COccManager : public CNoTrackObject

Elementy członkowskie

Metody publiczne

Nazwa/nazwisko opis
COccManager::CreateContainer Tworzy obiekt COleContainer.
COccManager::CreateDlgControls Tworzy kontrolki ActiveX hostowane przez skojarzony COleContainer obiekt.
COccManager::CreateSite Tworzy obiekt COleClientSite.
COccManager::GetDefBtnCode Pobiera kod przycisku domyślnego.
COccManager::IsDialogMessage Określa element docelowy komunikatu dialogowego.
COccManager::IsLabelControl Określa, czy określona kontrolka jest kontrolką etykiety.
COccManager::IsMatchingMnemonic Określa, czy bieżący mnemonic pasuje do mnemonic określonej kontrolki.
COccManager::OnEvent Próbuje obsłużyć określone zdarzenie.
COccManager::P ostCreateDialog Zwalnia zasoby przydzielone podczas tworzenia okna dialogowego.
COccManager::P reCreateDialog Przetwarza szablon okna dialogowego dla kontrolek ActiveX.
COccManager::SetDefaultButton Przełącza domyślny stan określonej kontrolki.
COccManager::SplitDialogTemplate Oddziela wszystkie istniejące kontrolki ActiveX od typowych kontrolek w określonym szablonie okna dialogowego.

Uwagi

Klasa bazowa , CNoTrackObjectjest nieudokumentowaną klasą bazową (znajdującą się w AFXTLS. H). Zaprojektowane do użytku przez strukturę MFC klasy pochodzące z CNoTrackObject klasy są wykluczone z wykrywania przecieków pamięci. Nie zaleca się, aby pochodzić bezpośrednio z klasy CNoTrackObject.

Hierarchia dziedziczenia

CNoTrackObject

COccManager

Wymagania

Nagłówek: afxocc.h

COccManager::CreateContainer

Wywoływana przez platformę w celu utworzenia kontenera sterowania.

virtual COleControlContainer* CreateContainer(CWnd* pWnd);

Parametry

pWnd
Wskaźnik do obiektu okna skojarzonego z niestandardowym kontenerem lokacji.

Wartość zwracana

Wskaźnik do nowo utworzonego kontenera; w przeciwnym razie wartość NULL.

Uwagi

Aby uzyskać więcej informacji na temat tworzenia witryn niestandardowych, zobacz COleControlContainer::AttachControlSite.

COccManager::CreateDlgControls

Wywołaj tę funkcję, aby utworzyć kontrolki ActiveX określone przez parametr pOccDialogInfo .

virtual BOOL CreateDlgControls(
    CWnd* pWndParent,
    LPCTSTR lpszResourceName,
    _AFX_OCC_DIALOG_INFO* pOccDialogInfo);

virtual BOOL CreateDlgControls(
    CWnd* pWndParent,
    void* lpResource,
    _AFX_OCC_DIALOG_INFO* pOccDialogInfo);

Parametry

pWndParent
Wskaźnik do elementu nadrzędnego obiektu okna dialogowego.

lpszResourceName
Nazwa tworzonego zasobu.

pOccDialogInfo
Wskaźnik do szablonu okna dialogowego użytego do utworzenia obiektu okna dialogowego.

lpResource
Wskaźnik do zasobu.

Wartość zwracana

Nonzero, jeśli kontrolka została utworzona pomyślnie; w przeciwnym razie zero.

COccManager::CreateSite

Wywoływana przez platformę w celu utworzenia lokacji sterowania hostowanej przez kontener wskazywany przez element pCtrlCont.

virtual COleControlSite* CreateSite(COleControlContainer* pCtrlCont);

Parametry

pCtrlCont
Wskaźnik do kontenera sterowania obsługującego nową lokację sterowania.

Wartość zwracana

Wskaźnik do nowo utworzonej lokacji sterowania.

Uwagi

Zastąp tę funkcję, aby utworzyć niestandardową lokację sterowania przy użyciu klasy pochodnej COleControlSite.

Każdy kontener sterowania może hostować wiele lokacji. Utwórz dodatkowe witryny z wieloma wywołaniami polecenia CreateSite.

COccManager::GetDefBtnCode

Wywołaj tę funkcję, aby określić, czy kontrolka jest domyślnym przyciskiem wypychania.

static DWORD AFX_CDECL GetDefBtnCode(CWnd* pWnd);

Parametry

pWnd
Obiekt okna zawierający kontrolkę przycisku.

Wartość zwracana

Jedna 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.

COccManager::IsDialogMessage

Wywoływana przez platformę w celu określenia, czy komunikat jest przeznaczony dla określonego okna dialogowego, a jeśli tak, przetwarza komunikat.

virtual BOOL IsDialogMessage(
    CWnd* pWndDlg,
    LPMSG lpMsg);

Parametry

pWndDlg
Wskaźnik do zamierzonego okna dialogowego docelowego komunikatu.

lpMsg
Wskaźnik do struktury zawierającej MSG komunikat do sprawdzenia.

Wartość zwracana

Niezero, jeśli komunikat jest przetwarzany; w przeciwnym razie zero.

Uwagi

Domyślnym zachowaniem jest IsDialogMessage sprawdzenie komunikatów klawiaturowych i przekonwertowanie ich na wybrane opcje odpowiedniego okna dialogowego. Na przykład po naciśnięciu TAB wybiera następną kontrolkę lub grupę kontrolek.

Zastąpi tę funkcję, aby zapewnić niestandardowe zachowanie komunikatów wysyłanych do określonego okna dialogowego.

COccManager::IsLabelControl

Wywołaj tę funkcję, aby określić, czy określona kontrolka jest kontrolką etykiety.

static BOOL AFX_CDECL IsLabelControl(CWnd* pWnd);
static BOOL AFX_CDECL IsLabelControl(COleControlSiteOrWnd* pWnd);

Parametry

pWnd
Wskaźnik do okna zawierającego kontrolkę.

Wartość zwracana

Nonzero, jeśli kontrolka jest etykietą; w przeciwnym razie zero

Uwagi

Kontrolka etykiety to kontrolka, która działa jak etykieta dla dowolnej kontrolki, która jest następna w kolejności.

COccManager::IsMatchingMnemonic

Wywołaj tę funkcję, aby określić, czy bieżące mnemonic pasuje, które są reprezentowane przez kontrolkę.

static BOOL AFX_CDECL IsMatchingMnemonic(
    CWnd* pWnd,
    LPMSG lpMsg);

static BOOL AFX_CDECL IsMatchingMnemonic(
    COleControlSiteOrWnd* pWnd,
    LPMSG lpMsg);

Parametry

pWnd
Wskaźnik do okna zawierającego kontrolkę.

lpMsg
Wskaźnik do komunikatu zawierającego mnemonic do dopasowania.

Wartość zwracana

Nonzero, jeśli mnemonic pasuje do kontrolki; w przeciwnym razie zero

Uwagi

COccManager::OnEvent

Wywoływana przez platformę do obsługi określonego zdarzenia.

virtual BOOL OnEvent(
    CCmdTarget* pCmdTarget,
    UINT idCtrl,
    AFX_EVENT* pEvent,
    AFX_CMDHANDLERINFO* pHandlerInfo);

Parametry

pCmdTarget
Wskaźnik do obiektu próbującego CCmdTarget obsłużyć zdarzenie

idCtrl
Identyfikator zasobu kontrolki.

pEvent
Obsługiwane zdarzenie.

pHandlerInfo
Jeśli nie ma wartości NULL, OnEvent wypełnia pTarget elementy AFX_CMDHANDLERINFO członkowskie struktury i pmf zamiast wysyłać polecenie. Zazwyczaj ten parametr powinien mieć wartość NULL.

Wartość zwracana

Nonzero, jeśli zdarzenie zostało obsłużone, w przeciwnym razie zero.

Uwagi

Zastąpij tę funkcję, aby dostosować domyślny proces obsługi zdarzeń.

COccManager::P reCreateDialog

Wywoływana przez platformę do przetwarzania szablonu okna dialogowego dla kontrolek ActiveX przed utworzeniem rzeczywistego okna dialogowego.

virtual const DLGTEMPLATE* PreCreateDialog(
    _AFX_OCC_DIALOG_INFO* pOccDialogInfo,
    const DLGTEMPLATE* pOrigTemplate);

Parametry

pOccDialogInfo
Struktura zawierająca _AFX_OCC_DIALOG_INFO informacje na temat szablonu okna dialogowego i wszystkich kontrolek ActiveX hostowanych przez okno dialogowe.

pOrigTemplate
Wskaźnik do szablonu okna dialogowego, który ma być używany podczas tworzenia okna dialogowego.

Wartość zwracana

Wskaźnik do struktury szablonu okna dialogowego używany do tworzenia okna dialogowego.

Uwagi

Domyślne zachowanie powoduje wywołanie SplitDialogTemplatemetody , określając, czy istnieją jakiekolwiek kontrolki ActiveX, a następnie zwraca wynikowy szablon okna dialogowego.

Zastąpi tę funkcję, aby dostosować proces tworzenia okna dialogowego hostowania kontrolek ActiveX.

COccManager::P ostCreateDialog

Wywoływana przez platformę w celu zwolnienia pamięci przydzielonej dla szablonu okna dialogowego.

virtual void PostCreateDialog(_AFX_OCC_DIALOG_INFO* pOccDialogInfo);

Parametry

pOccDialogInfo
Struktura zawierająca _AFX_OCC_DIALOG_INFO informacje na temat szablonu okna dialogowego i wszystkich kontrolek ActiveX hostowanych przez okno dialogowe.

Uwagi

Ta pamięć została przydzielona przez wywołanie metody SplitDialogTemplatei została użyta dla wszystkich hostowanych kontrolek ActiveX w oknie dialogowym.

Zastąpij tę funkcję, aby dostosować proces czyszczenia wszystkich zasobów używanych przez obiekt okna dialogowego.

COccManager::SetDefaultButton

Wywołaj tę funkcję, aby ustawić kontrolkę jako przycisk domyślny.

static void AFX_CDECL SetDefaultButton(
    CWnd* pWnd,
    BOOL bDefault);

Parametry

pWnd
Wskaźnik do okna zawierającego kontrolkę.

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

Wartość zwracana

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

Uwagi

Uwaga

Kontrolka musi mieć zestaw bitów stanu OLEMISC_ACTSLIKEBUTTON. Aby uzyskać więcej informacji na temat flag OLEMISC, zobacz temat OLEMISC w zestawie Windows SDK.

COccManager::SplitDialogTemplate

Wywoływana przez platformę w celu podzielenia kontrolek ActiveX z typowych kontrolek okien dialogowych.

virtual DLGTEMPLATE* SplitDialogTemplate(
    const DLGTEMPLATE* pTemplate,
    DLGITEMTEMPLATE** ppOleDlgItems);

Parametry

pTemplate
Wskaźnik do szablonu okna dialogowego do zbadania.

ppOleDlgItems
Lista wskaźników do elementów okna dialogowego, które są kontrolkami ActiveX.

Wartość zwracana

Wskaźnik do struktury szablonu okna dialogowego zawierającej tylko kontrolki inne niż ActiveX. Jeśli nie ma żadnych kontrolek ActiveX, zwracana jest wartość NULL.

Uwagi

Jeśli zostaną znalezione jakiekolwiek kontrolki ActiveX, szablon zostanie przeanalizowany i zostanie utworzony nowy szablon zawierający tylko kontrolki inne niż ActiveX. Wszystkie kontrolki ActiveX znalezione podczas tego procesu są dodawane do elementu ppOleDlgItems.

Jeśli w szablonie nie ma kontrolek ActiveX, zwracana jest wartość NULL.

Uwaga

Pamięć przydzielona dla nowego szablonu jest zwalniana w PostCreateDialog funkcji.

Zastąpi tę funkcję, aby dostosować ten proces.

Zobacz też

Wykres hierarchii
Klasa COleControlSite
Klasa COleControlContainer