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
Název | Popis |
---|---|
CMFCColorPickerCtrl::CMFCColorPickerCtrl |
CMFCColorPickerCtrl Vytvoří objekt. |
Veřejné metody
Název | 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
Název | Popis |
---|---|
CMFCColorPickerCtrl::DrawCursor |
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/sytosti/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
styly jsou vhodné pro standardní výběr barev. Styly PICKER
a LUMINANCE
styly 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.
Hierarchie dědičnosti
CObject
CCmdTarget
CWnd
CButton
CMFCColorPickerCtrl
Požadavky
Záhlaví: afxcolorpickerctrl.h
CMFCColorPickerCtrl::CMFCColorPickerCtrl
CMFCColorPickerCtrl
Vytvoří objekt.
CMFCColorPickerCtrl();
Návratová hodnota
Poznámky
CMFCColorPickerCtrl::DrawCursor
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;
Návratová 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
hue
[ven] Ukazatel na proměnnou typu double, která přijímá informace o odstínu.
luminance
[ven] Ukazatel na proměnnou typu double, která přijímá informace o světelnosti.
saturation
[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;
Návratová hodnota
Součást odstínu vybrané barvy.
Poznámky
CMFCColorPickerCtrl::GetLuminance
Načte svítivost barvy, kterou uživatel vybere.
double GetLuminance() const;
Návratová hodnota
Svítivost vybrané barvy.
Poznámky
CMFCColorPickerCtrl::GetSaturation
Načte sytost barvy, kterou uživatel vybere.
double GetSaturation() const;
Návratová 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.
Návratová 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
[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
hue
[v] Hodnota odstínu.
luminance
[v] Hodnota světelnosti.
saturation
[v] Hodnota sytosti.
bInvalidate
[v] TRUE
vynutit, aby se okno okamžitě aktualizovalo na novou barvu; v opačném případě . FALSE
Výchozí hodnota je TRUE
.
Poznámky
CMFCColorPickerCtrl::SetHue
Změní odstín aktuálně vybrané barvy.
void SetHue(double Hue);
Parametry
Hue
[v] Hodnota odstínu.
Poznámky
CMFCColorPickerCtrl::SetLuminance
Změní světelnost aktuálně vybrané barvy.
void SetLuminance(double Luminance);
Parametry
Luminance
[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
Saturation
[in
] 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.