Sdílet prostřednictvím


COccManager – třída

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

Syntaxe

class COccManager : public CNoTrackObject

Členové

Veřejné metody

Název Popis
COccManager::CreateContainer COleContainer Vytvoří objekt.
COccManager::CreateDlgControls Vytvoří ovládací prvky ActiveX 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 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 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.

Návratová 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 ovládací prvky ActiveX 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.

Návratová 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.

Návratová 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.

Návratová 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.

Návratová 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.

Návratová 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.

Návratová 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.

Návratová 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 ovládací prvky ActiveX 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 ovládací prvky ActiveX hostované dialogem.

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

Návratová 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é ovládací prvky ActiveX a poté vrátí výslednou šablonu dialogového okna.

Tuto funkci přepište tak, aby se přizpůsobil proces vytvoření dialogového okna, který je hostitelem ovládacích prvků ActiveX.

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 ovládací prvky ActiveX hostované dialogem.

Poznámky

Tato paměť byla přidělena voláním SplitDialogTemplatea byla použita pro všechny hostované ovládací prvky ActiveX 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.

Návratová 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ů 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 ovládacími prvky ActiveX.

Návratová hodnota

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

Poznámky

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

Pokud v šabloně nejsou žádné ovládací prvky 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