Ovládací prvky MFC ActiveX: Přidání vlastnosti populace
Burzovní vlastnosti se liší od vlastní vlastnosti, že již implementováno třídou COleControl.COleControlobsahuje předdefinované členské funkce, které podporují společné vlastnosti ovládacího prvku.Některé společné vlastnosti patří titulek ovládacího prvku a barvy popředí a pozadí.Informace o dalších vlastností akcií, Populace podporuje vlastnosti průvodce Přidat vlastnost dále v tomto článku.Odeslání položek mapování vlastností akcií vždy předchází DISP_STOCKPROP.
Tento článek popisuje, jak přidat ovládací prvek ActiveX pomocí Průvodce přidáním vlastností vlastnost akcií (v tomto případě titulek) a vysvětluje výsledné úpravy kódu.Témata zahrnují:
Pomocí Průvodce přidáním vlastností lze přidat vlastnost akcií
Přidat vlastnost Průvodce změny vlastností akcií
Burzovní vlastnosti podporované průvodce Přidat vlastnost
Vlastnosti akcií a oznámení
Vlastnosti barev
[!POZNÁMKA]
Vlastní ovládací prvky jazyka Visual Basic obvykle mají vlastnosti, jako například horní, vlevo, šířka, výška, zarovnat, značky, název, TabIndex, tabelátor a nadřazené.Kontejnery ovládací prvek ActiveX, však jsou odpovědné za provádění těchto vlastností ovládacího prvku a ovládací prvky ActiveX by proto nemusí podporovat tyto vlastnosti.
Použití vlastnost průvodce Přidat vlastnost akcií
Přidání vlastnosti akcií vyžaduje méně kódu než přidání vlastních vlastností, protože podpora zpracování automaticky pomocí vlastnosti COleControl.Následující postup ukazuje přidání populace vlastnost titulek rámci ovládací prvek ActiveX a lze také přidat další vlastnosti akcií.Nahraďte název vybrané skladové vlastnost titulek.
Přidat zásobní vlastnost titulek pomocí Průvodce přidáním vlastností
Načtení ovládacího prvku projektu.
V zobrazení třídy rozbalte knihovnu ovládacího prvku.
Uzel rozhraní pro ovládání (druhý uzel uzel knihovny) tlačítkem otevřete místní nabídku.
V místní nabídce klepněte na příkaz Přidat a klepněte na tlačítko Přidat vlastnost.
Otevře Průvodce přidat vlastnost.
V Název vlastnosti klepněte na tlačítko Titulek.
Klepněte na tlačítko Dokončit.
Změny vlastností Průvodce přidat vlastnosti populace
Protože COleControl akcií vlastnosti podporuje průvodce Přidat vlastnost nezmění deklaraci třídy jakýmkoli způsobem; Přidá vlastnost odeslání mapy.Průvodce přidáním vlastností přidá do mapy odeslání ovládacího prvku, který je umístěn v provedení následující řádek (.Soubor CPP):
DISP_STOCKPROP_CAPTION()
Popis rozhraní ovládacího prvku je přidán následující řádek (.Soubor IDL):
[id(DISPID_CAPTION), helpstring("property Caption")] BSTR Caption;
Přiřadí tento řádek vlastnosti Titulek určitým identifikátorem.Všimněte si, že vlastnost je vazbu a bude požadovat oprávnění z databáze před změnou hodnoty.
Díky vlastnosti Titulek uživatelům ovládacího prvku.Chcete-li použít hodnotu akcií vlastnosti přístup členské proměnné nebo funkce člena COleControl základní třída.Další informace o těchto členské proměnné a funkce členů naleznete v další části populace podporuje vlastnosti průvodce Přidat vlastnost.
Zásobní vlastností podporovaných vlastnost Průvodce
COleControl Třída obsahuje devět akcií vlastnosti.Můžete přidat vlastnosti, které chcete pomocí Průvodce přidáním vlastností.
Property |
Odeslání položku mapy |
Jak získat přístup k hodnotě |
---|---|---|
Zobrazení |
(DISP_STOCKPROP_APPEARANCE) |
Hodnota přístupné jako m_sAppearance. |
BackColor |
(DISP_STOCKPROP_BACKCOLOR) |
Hodnota přístupný voláním GetBackColor. |
BorderStyle |
(DISP_STOCKPROP_BORDERSTYLE) |
Hodnota přístupné jako m_sBorderStyle. |
Titulek |
(DISP_STOCKPROP_CAPTION) |
Hodnota přístupný voláním InternalGetText. |
Povoleno |
(DISP_STOCKPROP_ENABLED) |
Hodnota přístupné jako m_bEnabled. |
Písmo |
(DISP_STOCKPROP_FONT) |
Naleznete v článku ovládací prvky MFC ActiveX: písma pomocí pro použití. |
ForeColor |
(DISP_STOCKPROP_FORECOLOR) |
Hodnota přístupný voláním GetForeColor. |
hWnd |
(DISP_STOCKPROP_HWND) |
Hodnota přístupné jako m_hWnd. |
Text |
(DISP_STOCKPROP_TEXT) |
Hodnota přístupný voláním InternalGetText.Tato vlastnost je stejné jako Titulek, s výjimkou pro název vlastnosti. |
ReadyState |
DISP_STOCKPROP_READYSTATE() |
Hodnota přístupné jako m_lReadyState neboGetReadyState |
Burzovní vlastnosti a oznámení
Většina akcií vlastnosti mají funkce oznámení, které mohou být přepsána.Například, kdykoli BackColor je změněna vlastnost OnBackColorChanged je volána funkce (členské funkce třídy řízení).Výchozí implementace (v COleControl) volání InvalidateControl.Tato funkce přepsat, chcete-li provést další akce v reakci na tuto situaci.
Vlastnosti barev
Můžete použít populace ForeColor a BackColor vlastnosti nebo vlastní vlastnosti vlastní barvu při malování ovládacího prvku.Chcete-li použít vlastnost Barva volání COleControl::TranslateColor členské funkce.Parametry této funkce se hodnota vlastnosti Barva a popisovač volitelné palety.Vrácená hodnota je COLORREF hodnotu, kterou lze předat GDI funguje jako SetTextColor a CreateSolidBrush.
Barevné hodnoty pro zásobu ForeColor a BackColor jsou přístupné buď volání GetForeColor nebo GetBackColor resp. fungovat.
Následující příklad ukazuje použití vlastnosti těchto dvou barev při malování ovládacího prvku.Se inicializuje dočasnou COLORREF proměnné a CBrush s voláními objektu TranslateColor: jeden používá ForeColor vlastnosti a jiné použití BackColor vlastnost.Dočasně CBrush objekt se pak používá k malování na ovládací prvek obdélník a barvu textu je nastaveno pomocí ForeColor vlastnost.
CBrush bkBrush(TranslateColor(GetBackColor()));
COLORREF clrFore = TranslateColor(GetForeColor());
pdc->FillRect(rcBounds, &bkBrush);
pdc->SetTextColor(clrFore);
pdc->DrawText(InternalGetText(), -1, rcBounds, DT_SINGLELINE | DT_CENTER | DT_VCENTER);