Sdílet prostřednictvím


COccManager – třída

Spravuje různé vlastní řídicí lokality; COleControlContainerCOleControlSite a objekty.

Syntaxe

class COccManager : public CNoTrackObject

Členové

Veřejné metody

Jméno popis
COccManager::CreateContainer COleContainer Vytvoří objekt.
COccManager::CreateDlgControls Vytvoří technologie ActiveX ovládací prvky hostované přidruženým COleContainer objektem.
COccManager::CreateSite COleClientSite Vytvoří objekt.
COccManager::GetDefBtnCode Načte kód výchozího tlačítka.
COccManager::IsDialogMessage Určuje cíl dialogového okna.
COccManager::IsLabelControl Určuje, zda zadaný ovládací prvek je ovládací prvek popisku.
COccManager::IsMatchingMnemonic Určuje, zda aktuální mnemonic odpovídá mnemonic zadaného ovládacího prvku.
COccManager::OnEvent Pokusí se zpracovat zadanou událost.
COccManager::P ostCreateDialog Uvolní prostředky přidělené během vytváření dialogového okna.
COccManager::P reCreateDialog Zpracuje šablonu dialogového okna pro ovládací prvky technologie ActiveX.
COccManager::SetDefaultButton Přepíná výchozí stav zadaného ovládacího prvku.
COccManager::SplitDialogTemplate Odděluje všechny existující ovládací prvky technologie ActiveX od běžných ovládacích prvků v zadané šabloně dialogového okna.

Poznámky

Základní třída je CNoTrackObjectnezdokumentovaná základní třída (umístěná v AFXTLS. H). Třídy odvozené z CNoTrackObject třídy jsou určeny pro použití v rozhraní MFC, jsou vyloučeny z detekce nevracení paměti. Nedoporučuje se odvozovat přímo z CNoTrackObject.

Hierarchie dědičnosti

CNoTrackObject

COccManager

Požadavky

Hlavička: afxocc.h

COccManager::CreateContainer

Zavolá se rozhraním pro vytvoření kontejneru ovládacího prvku.

virtual COleControlContainer* CreateContainer(CWnd* pWnd);

Parametry

pWnd
Ukazatel na objekt okna přidružený k vlastnímu kontejneru webu.

Vrácená hodnota

Ukazatel na nově vytvořený kontejner; jinak NULL.

Poznámky

Další informace o vytváření vlastních webů naleznete v tématu COleControlContainer::AttachControlSite.

COccManager::CreateDlgControls

Voláním této funkce vytvoříte technologie ActiveX ovládací prvky určené parametrem 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
Ukazatel na nadřazený objekt dialogového okna.

lpszResourceName
Název vytvářeného prostředku.

pOccDialogInfo
Ukazatel na šablonu dialogového okna sloužící k vytvoření objektu dialogového okna.

lpResource
Ukazatel na prostředek.

Vrácená hodnota

Nenulové, pokud byl ovládací prvek úspěšně vytvořen; jinak nula.

COccManager::CreateSite

Volá se rozhraním pro vytvoření řídicího webu hostovaného kontejnerem, na který odkazuje pCtrlCont.

virtual COleControlSite* CreateSite(COleControlContainer* pCtrlCont);

Parametry

pCtrlCont
Ukazatel na kontejner ovládacího prvku hostující nový web ovládacího prvku.

Vrácená hodnota

Ukazatel na nově vytvořený řídicí web.

Poznámky

Přepsat tuto funkci vytvořit vlastní řídicí web pomocí COleControlSite-odvozené třídy.

Každý kontejner ovládacího prvku může hostovat více lokalit. Vytvořte další weby s více voláními .CreateSite

COccManager::GetDefBtnCode

Voláním této funkce určíte, jestli je ovládací prvek výchozím tlačítkem.

static DWORD AFX_CDECL GetDefBtnCode(CWnd* pWnd);

Parametry

pWnd
Objekt okna obsahující ovládací prvek tlačítko.

Vrácená hodnota

Jedna z následujících hodnot:

  • DLGC_DEFPUSHBUTTON Ovládací prvek je výchozí tlačítko v dialogovém okně.

  • DLGC_UNDEFPUSHBUTTON Ovládací prvek není výchozím tlačítkem v dialogovém okně.

  • 0 Ovládací prvek není tlačítko.

COccManager::IsDialogMessage

Volá se rozhraním k určení, zda je zpráva určena pro zadané dialogové okno, a pokud ano, zpracuje zprávu.

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

Parametry

pWndDlg
Ukazatel na zamýšlený cílový dialog zprávy.

lpMsg
Ukazatel na MSG strukturu, která obsahuje zprávu, která se má zkontrolovat.

Vrácená hodnota

Nenulové, pokud je zpráva zpracována; jinak nula.

Poznámky

Výchozím chováním IsDialogMessage je zkontrolovat zprávy klávesnice a převést je na výběr odpovídajícího dialogového okna. Například klávesa TAB při stisknutí vybere další ovládací prvek nebo skupinu ovládacích prvků.

Přepište tuto funkci tak, aby poskytovala vlastní chování zpráv odeslaných do zadaného dialogového okna.

COccManager::IsLabelControl

Voláním této funkce určíte, zda je zadaný ovládací prvek ovládací prvek popisku.

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

Parametry

pWnd
Ukazatel na okno obsahující ovládací prvek.

Vrácená hodnota

Nenulové, pokud je ovládací prvek popiskem; jinak nula

Poznámky

Ovládací prvek popisku je takový, který funguje jako popisek pro jakýkoli ovládací prvek, který je vedle řazení.

COccManager::IsMatchingMnemonic

Voláním této funkce určíte, zda aktuální mnemonic odpovídá, které představuje ovládací prvek.

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

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

Parametry

pWnd
Ukazatel na okno obsahující ovládací prvek.

lpMsg
Ukazatel na zprávu obsahující mnemonicu, která se má shodovat.

Vrácená hodnota

Nenulové, pokud měmonic odpovídá ovládacímu prvku; jinak nula

Poznámky

COccManager::OnEvent

Volá se rozhraním pro zpracování zadané události.

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

Parametry

pCmdTarget
Ukazatel na CCmdTarget objekt, který se pokouší zpracovat událost

idCtrl
ID prostředku ovládacího prvku.

pEvent
Událost, která se zpracovává.

pHandlerInfo
Pokud není null, OnEvent vyplní pTarget místo odeslání příkazu členy struktury a pmf členy AFX_CMDHANDLERINFO struktury. Obvykle by tento parametr měl mít hodnotu NULL.

Vrácená hodnota

Nenulové, pokud byla událost zpracována, jinak nula.

Poznámky

Přepište tuto funkci tak, aby přizpůsobila výchozí proces zpracování událostí.

COccManager::P reCreateDialog

Volá se rozhraním pro zpracování šablony dialogového okna pro technologie ActiveX ovládací prvky před vytvořením skutečného dialogového okna.

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

Parametry

pOccDialogInfo
Struktura _AFX_OCC_DIALOG_INFO obsahující informace o šabloně dialogového okna a všechny technologie ActiveX ovládací prvky hostované dialogem.

pOrigTemplate
Ukazatel na šablonu dialogového okna, která se má použít při vytváření dialogového okna.

Vrácená hodnota

Ukazatel na strukturu šablony dialogového okna sloužící k vytvoření dialogového okna.

Poznámky

Výchozí chování provede volání SplitDialogTemplate, určení, zda existují nějaké technologie ActiveX ovládací prvky a poté vrátí výslednou šablonu dialogového okna.

Přepsat tuto funkci tak, aby přizpůsobila proces vytvoření dialogového okna hostujícího technologie ActiveX ovládací prvky.

COccManager::P ostCreateDialog

Volal rozhraní pro uvolnění paměti přidělené šabloně dialogového okna.

virtual void PostCreateDialog(_AFX_OCC_DIALOG_INFO* pOccDialogInfo);

Parametry

pOccDialogInfo
Struktura _AFX_OCC_DIALOG_INFO obsahující informace o šabloně dialogového okna a všechny technologie ActiveX ovládací prvky hostované dialogem.

Poznámky

Tato paměť byla přidělena voláním SplitDialogTemplatea byla použita pro všechny hostované technologie ActiveX ovládací prvky v dialogovém okně.

Tuto funkci přepište tak, aby se přizpůsobil proces čištění všech prostředků používaných objektem dialogového okna.

COccManager::SetDefaultButton

Voláním této funkce nastavíte ovládací prvek jako výchozí tlačítko.

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

Parametry

pWnd
Ukazatel na okno obsahující ovládací prvek.

bDefault
Nenulové, pokud by se ovládací prvek měl stát výchozím tlačítkem; jinak nula.

Vrácená hodnota

Nenulové, pokud je úspěšné; jinak nula.

Poznámky

Poznámka

Ovládací prvek musí mít nastavenou OLEMISC_ACTSLIKEBUTTON stavovou sadu. Další informace o příznakech OLEMISC naleznete v tématu OLEMISC v sadě Windows SDK.

COccManager::SplitDialogTemplate

Volal rozhraní pro rozdělení ovládacích prvků technologie ActiveX z běžných dialogových ovládacích prvků.

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

Parametry

pTemplate
Ukazatel na šablonu dialogového okna, která se má prověřit.

ppOleDlgItems
Seznam ukazatelů na položky dialogového okna, které jsou technologie ActiveX ovládacími prvky.

Vrácená hodnota

Ukazatel na strukturu šablony dialogového okna obsahující pouze ovládací prvky, které nejsou technologie ActiveX. Pokud nejsou k dispozici žádné ovládací prvky technologie ActiveX, vrátí se hodnota NULL.

Poznámky

Pokud jsou nalezeny nějaké technologie ActiveX ovládací prvky, šablona se analyzuje a vytvoří se nová šablona obsahující pouze ovládací prvky, které nejsou technologie ActiveX. Všechny technologie ActiveX ovládací prvky nalezené během tohoto procesu se přidají do ppOleDlgItems.

Pokud v šabloně nejsou žádné ovládací prvky technologie ActiveX, vrátí se hodnota NULL .

Poznámka

Paměť přidělená pro novou šablonu se uvolní ve PostCreateDialog funkci.

Tuto funkci přepište, aby se tento proces přizpůsobil.

Viz také

Graf hierarchie
COleControlSite – třída
COleControlContainer – třída