Sdílet prostřednictvím


Ovládací prvky MFC ActiveX: Přístup K vlastnosti prostředí

Tento článek pojednává o přístupu vlastnosti prostředí jeho kontejneru ovládací prvek ActiveX.

Ovládací prvek můžete získat informace o jeho kontejneru přístup k vlastnostem okolního kontejneru.Tyto vlastnosti poskytují vizuální charakteristiky, jako je například barva pozadí na kontejner, aktuální písmo používané kontejneru a funkční vlastnosti, například zda kontejner je aktuálně v režimu uživatele nebo návrháře.Ovládací prvek můžete přizpůsobit vzhled a chování ke konkrétnímu kontejneru, v níž je vložený vlastnosti prostředí.Však ovládací prvek nikdy předpokládat, že jeho kontejneru bude podporovat jakékoli konkrétní vlastnost okolí.Ve skutečnosti některé nádoby nemusí podporovat všechny vlastnosti prostředí vůbec.V nepřítomnosti okolí vlastnost ovládacího prvku předpokládat, přiměřenou výchozí hodnotu.

Přístup okolí vlastnost volání na COleControl::GetAmbientProperty.Tato funkce odeslání ID vlastnosti okolí očekává jako první parametr (soubor OLECTL.Odeslání ID pro standardní sadu vlastností okolního definuje H).

Parametry GetAmbientProperty funkce jsou ID odeslání, varianty značky označující typ očekávané vlastnosti a ukazatel na paměti, kde by měla být vrácena hodnota.Typ dat, na které se vztahuje tento ukazatel bude záviset na typu variant značky.Funkce vrátí TRUE Pokud kontejner podporuje vlastnost, jinak vrátí FALSE.

Následující příklad kódu získá hodnotu okolí vlastnost nazvanou "Uživatelského režimu." Pokud vlastnost není podporována v kontejneru výchozí hodnotu TRUE se předpokládá:

BOOL bUserMode;
if(!GetAmbientProperty( DISPID_AMBIENT_USERMODE, VT_BOOL, &bUserMode))
   bUserMode = TRUE;

Pro zvýšení pohodlí COleControl dodává pomocné funkce, které mnoho běžně používaných vlastností okolního přístup a vrátit odpovídající výchozí vlastnosti nejsou k dispozici.Tyto pomocné funkce jsou následující:

Pokud změní hodnotu vlastnosti okolí (prostřednictvím některé akce kontejneru), OnAmbientPropertyChanged se nazývá členské funkce ovládacího prvku.Potlačit toto členské funkce zpracování takového oznámení.Parametr pro OnAmbientPropertyChanged je ovlivněné okolí vlastnost ID odeslání.Hodnota ID tohoto odeslání může být DISPID_UNKNOWN, který označuje jednu nebo více vlastností okolí změnil, ale informace o tom, které byly postiženy vlastnosti k dispozici.

Viz také

Koncepty

Ovládací prvky MFC ActiveX