Sdílet prostřednictvím


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ů.

CMFCColorPickerCtrl dialog box.

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:

  1. 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 z CButton třídy).

  2. 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 na CMFCColorPickerCtrl.

  3. 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í vybranou CMFCColorPickerCtrl 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

Objekt CObject

CCmdTarget

Cwnd

Tlačítko tlačítka

CMFCColorPickerCtrl

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é

Graf hierarchie
Třídy
CMFCColorDialog – třída