CMFCColorPickerCtrl – třída
Třída CMFCColorPickerCtrl
poskytuje funkce pro ovládací prvek, který slouží k výběru barev.
Syntaxe
class CMFCColorPickerCtrl : public CButton
Členové
Veřejné konstruktory
Jméno | popis |
---|---|
CMFCColorPickerCtrl::CMFCColorPickerCtrl | CMFCColorPickerCtrl Vytvoří objekt. |
Veřejné metody
Jméno | popis |
---|---|
CMFCColorPickerCtrl::GetColor | Načte barvu, kterou uživatel vybere. |
CMFCColorPickerCtrl::GetHLS | Načte hodnoty odstínu, světelnosti a sytosti barvy, kterou uživatel vybere. |
CMFCColorPickerCtrl::GetHue | Načte součást odstínu barvy, kterou uživatel vybere. |
CMFCColorPickerCtrl::GetLuminance | Načte svítivost barvy, kterou uživatel vybere. |
CMFCColorPickerCtrl::GetSaturation | Načte sytost součásti barvy, kterou uživatel vybere. |
CMFCColorPickerCtrl::SelectCellHexagon | Nastaví aktuální barvu na barvu definovanou zadanými součástmi barev RGB nebo zadaným šestiúhelníkem buňky. |
CMFCColorPickerCtrl::SetColor | Nastaví aktuální barvu na zadanou hodnotu barvy RGB. |
CMFCColorPickerCtrl::SetHLS | Nastaví aktuální barvu na zadanou hodnotu barvy HLS. |
CMFCColorPickerCtrl::SetHue | Změní součást odstínu aktuálně vybrané barvy. |
CMFCColorPickerCtrl::SetLuminance | Změní komponentu světelnosti aktuálně vybrané barvy. |
CMFCColorPickerCtrl::SetLuminanceBarWidth | Nastaví šířku panelu světelnosti v ovládacím prvku pro výběr barvy. |
CMFCColorPickerCtrl::SetOriginalColor | Nastaví počáteční vybranou barvu. |
CMFCColorPickerCtrl::SetPalette | Nastaví aktuální paletu barev. |
CMFCColorPickerCtrl::SetSaturation | Změní sytost komponenty aktuálně vybrané barvy. |
CMFCColorPickerCtrl::SetType | Nastaví typ ovládacího prvku pro výběr barvy, který se má zobrazit. |
Chráněné metody
Jméno | popis |
---|---|
CMFCColorPickerCtrl::D rawCursor | Volá se rozhraním před kurzorem, který odkazuje na vybranou barvu. |
Poznámky
Standardní barvy jsou vybrány z šestnáctkové palety barev a vlastní barvy jsou vybrány z pruhu světelnosti, kde jsou barvy specifikovány pomocí červené/zelené/modré notace nebo odstínu/satuaration/světelnosti.
Následující obrázek znázorňuje několik CMFCColorPickerCtrl
objektů.
Podporuje CMFCColorPickerCtrl
dva páry stylů. Styly HEX a HEX_GREYSCALE jsou vhodné pro standardní výběr barev. Styly PICKER a LUMINANCE jsou vhodné pro vlastní výběr barev.
Provedením následujících kroků začleníte ovládací prvek do dialogového CMFCColorPickerCtrl
okna:
Pokud používáte ClassWizard, vložte do šablony dialogového okna nový ovládací prvek tlačítka (protože
CMFCColorPickerCtrl
třída je zděděna zCButton
třídy).Vložte do třídy dialogového okna proměnnou člena přidruženou k novému ovládacímu prvku button. Potom změňte typ proměnné z
CButton
naCMFCColorPickerCtrl
.Vložte obslužnou rutinu
WM_INITDIALOG
zprávy pro třídu dialogového okna. V obslužné rutině nastavte typ, paletu a počáteční vybranouCMFCColorPickerCtrl
barvu ovládacího prvku.
Příklad
Následující příklad ukazuje, jak nakonfigurovat CMFCColorPickerCtrl
objekt pomocí různých metod ve CMFCColorPickerCtrl
třídě. Příklad ukazuje, jak nastavit typ ovládacího prvku pro výběr a jak nastavit jeho barvu, odstín, světelnost a sytost. Příklad je součástí ukázky Nové ovládací prvky.
CMFCColorPickerCtrl m_wndLum;
// CPalette m_palSys
// set the type of the color picker control
m_wndLum.SetType(CMFCColorPickerCtrl::LUMINANCE);
m_wndLum.SetPalette(&m_palSys);
// set the color, hue, luminance and saturation of the color picker control
m_wndLum.SetColor(RGB(0, 255, 0));
m_wndLum.SetHue(0.5);
m_wndLum.SetLuminance(2.5);
m_wndLum.SetLuminanceBarWidth(10);
m_wndLum.SetSaturation(0.5);
Hierarchie dědičnosti
Požadavky
Hlavička: afxcolorpickerctrl.h
CMFCColorPickerCtrl::CMFCColorPickerCtrl
CMFCColorPickerCtrl
Vytvoří objekt.
CMFCColorPickerCtrl();
Vrácená hodnota
Poznámky
CMFCColorPickerCtrl::D rawCursor
Volá se rozhraním před kurzorem, který odkazuje na vybranou barvu.
virtual void DrawCursor(
CDC* pDC,
const CRect& rect);
Parametry
Pdc
[v] Ukazatel na kontext zařízení
Rect
[v] Určuje obdélníkovou oblast kolem vybrané barvy.
Poznámky
Tuto metodu přepište, když potřebujete změnit tvar kurzoru, který odkazuje na vybranou barvu.
CMFCColorPickerCtrl::GetColor
Načte barvu, kterou uživatel vybere.
COLORREF GetColor() const;
Vrácená hodnota
Hodnota RGB vybrané barvy.
Poznámky
CMFCColorPickerCtrl::GetHLS
Načte hodnoty odstínu, světelnosti a sytosti barvy, kterou uživatel vybere.
void GetHLS(
double* hue,
double* luminance,
double* saturation);
Parametry
Odstín
[ven] Ukazatel na proměnnou typu double, která přijímá informace o odstínu.
Světlostí
[ven] Ukazatel na proměnnou typu double, která přijímá informace o světelnosti.
Sytost
[ven] Ukazatel na proměnnou typu double, která přijímá informace o sytosti.
Poznámky
CMFCColorPickerCtrl::GetHue
Načte součást odstínu barvy, kterou uživatel vybere.
double GetHue() const;
Vrácená hodnota
Součást odstínu vybrané barvy.
Poznámky
CMFCColorPickerCtrl::GetLuminance
Načte svítivost barvy, kterou uživatel vybere.
double GetLuminance() const;
Vrácená hodnota
Svítivost vybrané barvy.
Poznámky
CMFCColorPickerCtrl::GetSaturation
Načte sytost barvy, kterou uživatel vybere.
double GetSaturation() const;
Vrácená hodnota
Sytost vybrané barvy.
Poznámky
CMFCColorPickerCtrl::SelectCellHexagon
Nastaví aktuální barvu na barvu definovanou zadanými součástmi barev RGB nebo zadaným šestiúhelníkem buňky.
void SelectCellHexagon(
BYTE R,
BYTE G,
BYTE B);
BOOL SelectCellHexagon(
int x,
int y);
Parametry
R
[v] Červená barevná komponenta.
G
[v] Zelená barevná komponenta.
B
[v] Modrá barevná komponenta.
X
[v] Souřadnice x kurzoru, která odkazuje na šestiúhelník buňky.
Y
[v] Souřadnice y kurzoru, která odkazuje na šestiúhelník buňky.
Vrácená hodnota
Druhé přetížení této metody vždy vrátí HODNOTU FALSE.
Poznámky
První přetížení této metody nastaví aktuální barvu na barvu, která odpovídá zadanému ovládacímu prvku pro výběr barev červenou, zelenou a modrou barvou.
Druhé přetížení této metody nastaví aktuální barvu na barvu šestiúhelníku buňky, která je odkazována zadaným umístěním kurzoru.
CMFCColorPickerCtrl::SetColor
Nastaví aktuální barvu na zadanou hodnotu barvy RGB.
void SetColor(COLORREF Color);
Parametry
Color (Barva)
[v] Hodnota barvy RGB.
Poznámky
CMFCColorPickerCtrl::SetHLS
Nastaví aktuální barvu na zadanou hodnotu barvy HLS.
void SetHLS(
double hue,
double luminance,
double saturation,
BOOL bInvalidate=TRUE);
Parametry
Odstín
[v] Hodnota odstínu.
Světlostí
[v] Hodnota světelnosti.
Sytost
[v] Hodnota sytosti.
bInvalidate
[v] TRUE, aby se okno okamžitě aktualizovalo na novou barvu; jinak NEPRAVDA. Výchozí hodnota je PRAVDA.
Poznámky
CMFCColorPickerCtrl::SetHue
Změní odstín aktuálně vybrané barvy.
void SetHue(double Hue);
Parametry
Odstín
[v] Hodnota odstínu.
Poznámky
CMFCColorPickerCtrl::SetLuminance
Změní světelnost aktuálně vybrané barvy.
void SetLuminance(double Luminance);
Parametry
Světlostí
[v] Hodnota světelnosti.
Poznámky
CMFCColorPickerCtrl::SetLuminanceBarWidth
Nastaví šířku panelu světelnosti v ovládacím prvku pro výběr barvy.
void SetLuminanceBarWidth(int w);
Parametry
W
[v] Šířka pruhu světelnosti měřená v pixelech.
Poznámky
Pomocí této metody můžete změnit velikost panelu světelnosti, který je na kartě Vlastní ovládacího prvku pro výběr barvy. Parametr w určuje novou šířku světelnosti. Hodnota šířky se ignoruje, pokud přesahuje tři čtvrtiny šířky oblasti klienta.
CMFCColorPickerCtrl::SetOriginalColor
Nastaví počáteční vybranou barvu.
void SetOriginalColor(COLORREF ref);
Parametry
ref
[v] Hodnota barvy RGB.
Poznámky
Volání této metody při inicializaci ovládacího prvku pro výběr barvy.
CMFCColorPickerCtrl::SetPalette
Nastaví aktuální paletu barev.
void SetPalette(CPalette* pPalette);
Parametry
pPalette
[v] Ukazatel na paletu barev
Poznámky
Paleta barev definuje pole barev, které se zobrazí v ovládacím prvku pro výběr barev.
CMFCColorPickerCtrl::SetSaturation
Změní sytost aktuálně vybrané barvy.
void SetSaturation(double Saturation);
Parametry
Sytost
[v] Hodnota sytosti.
Poznámky
CMFCColorPickerCtrl::SetType
Nastaví typ ovládacího prvku pro výběr barvy, který se má zobrazit.
void SetType(COLORTYPE colorType);
Parametry
colorType
[v] Typ ovládacího prvku pro výběr barvy.
Typy jsou definovány výčtem CMFCColorPickerCtrl::COLORTYPE
. Možné typy jsou LUMINANCE, PICKER, HEX a HEX_GREYSCALE. Výchozí typ je PICKER.
Poznámky
Chcete-li určit typ ovládacího prvku pro výběr barvy, zavolejte tuto metodu před vytvořením ovládacího prvku Windows.
Viz také
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro