Bagikan melalui


Kelas CMFCColorButton

Kelas CMFCColorButton Kelas CMFCColorBar dan digunakan bersama-sama untuk mengimplementasikan kontrol pemilih warna.

Sintaks

class CMFCColorButton : public CMFCButton

Anggota

Konstruktor Publik

Nama Deskripsi
CMFCColorButton::CMFCColorButton Membuat objek baru CMFCColorButton .

Metode Publik

Nama Deskripsi
CMFCColorButton::EnableAutomaticButton Mengaktifkan dan menonaktifkan tombol "otomatis" yang diposisikan di atas tombol warna reguler. (Tombol otomatis sistem standar diberi labelOtomatis.)
CMFCColorButton::EnableOtherButton Mengaktifkan dan menonaktifkan tombol "lainnya" yang diposisikan di bawah tombol warna reguler. (Tombol "lainnya" sistem standar diberi labelWarna Lainnya.)
CMFCColorButton::GetAutomaticColor Mengambil warna otomatis saat ini.
CMFCColorButton::GetColor Mengambil warna tombol.
CMFCColorButton::SetColor Mengatur warna tombol.
CMFCColorButton::SetColorName Mengatur nama warna.
CMFCColorButton::SetColumnsNumber Mengatur jumlah kolom pada kotak dialog pemilih warna.
CMFCColorButton::SetDocumentColors Menentukan daftar warna khusus dokumen yang ditampilkan pada kotak dialog pemilih warna.
CMFCColorButton::SetPalette Menentukan palet warna tampilan standar.
CMFCColorButton::SizeToContent Mengubah ukuran kontrol tombol, tergantung pada teks dan ukuran gambarnya.

Metode yang Dilindungi

Nama Deskripsi
CMFCColorButton::IsDrawXPTheme Menunjukkan apakah tombol warna saat ini ditampilkan dalam gaya visual Windows XP.
CMFCColorButton::OnDraw Dipanggil oleh kerangka kerja untuk menampilkan gambar tombol.
CMFCColorButton::OnDrawBorder Dipanggil oleh kerangka kerja untuk menampilkan batas tombol.
CMFCColorButton::OnDrawFocusRect Dipanggil oleh kerangka kerja untuk menampilkan persegi panjang fokus saat tombol memiliki fokus.
CMFCColorButton::OnShowColorPopup Dipanggil oleh kerangka kerja saat kotak dialog pemilih warna akan ditampilkan.
CMFCColorButton::RebuildPalette Menginisialisasi anggota data yang m_pPalette dilindungi ke palet yang ditentukan atau palet sistem default.
CMFCColorButton::UpdateColor Dipanggil oleh kerangka kerja saat pengguna memilih warna dari palet kotak dialog pemilih warna.

Anggota Data

Nama Deskripsi
m_bAltColorDlg Sebuah Boolean. Jika TRUE, kerangka kerja menampilkan kotak dialog warna CMFCColorDialog saat tombol lain diklik, atau jika FALSE, kotak dialog warna sistem. Nilai defaultnya adalah TRUE. Untuk informasi selengkapnya, lihat CMFCColorButton::EnableOtherButton.
m_bAutoSetFocus Sebuah Boolean. Jika TRUE, kerangka kerja mengatur fokus pada menu warna saat menu ditampilkan, atau jika FALSE, tidak mengubah fokus. Nilai defaultnya adalah TRUE.
CMFCColorButton::m_bEnabledInCustomizeMode Menunjukkan apakah mode kustomisasi diaktifkan untuk tombol warna.
m_Color Nilai COLORREF . Berisi warna terpilih saat ini.
m_ColorAutomatic Nilai COLORREF . Berisi warna default yang saat ini dipilih.
m_Colors CArray nilai COLORREF. Berisi warna yang saat ini tersedia.
m_lstDocColors CList nilai COLORREF. Berisi warna dokumen saat ini.
m_nColumns Bilangan bulat. Berisi jumlah kolom yang akan ditampilkan di kisi warna dalam menu pilihan warna.
m_pPalette Penunjuk ke CPalette. Berisi warna yang tersedia di menu pilihan warna saat ini.
m_pPopup Penunjuk ke objek Kelas CMFCColorPopupMenu. Menu pilihan warna yang ditampilkan saat Anda mengklik tombol warna.
m_strAutoColorText String . Label tombol "otomatis" di menu pilihan warna.
m_strDocColorsText String . Label tombol dalam menu pilihan warna yang menampilkan warna dokumen.
m_strOtherText String . Label tombol "lainnya" di menu pilihan warna.

Keterangan

Secara default, CMFCColorButton kelas berulah sebagai tombol tekan yang membuka kotak dialog pemilih warna. Kotak dialog pemilih warna berisi array tombol warna kecil dan tombol "lainnya" yang menampilkan pemilih warna kustom. (Tombol "lainnya" sistem standar diberi labelWarna Lainnya.) Saat pengguna memilih warna baru, CMFCColorButton objek mencerminkan perubahan dan menampilkan warna yang dipilih.

Buat kontrol tombol warna baik langsung di kode Anda, atau dengan menggunakan alat ClassWizard dan templat kotak dialog. Jika Anda membuat kontrol tombol warna secara langsung, tambahkan CMFCColorButton variabel ke aplikasi Anda, lalu panggil konstruktor dan Create metode CMFCColorButton objek. Jika Anda menggunakan ClassWizard, tambahkan CButton variabel ke aplikasi Anda, lalu ubah jenis variabel dari CButton ke CMFCColorButton.

Kotak dialog pemilih warna ( Kelas CMFCColorBar) ditampilkan oleh metode CMFCColorButton::OnShowColorPopup saat kerangka kerja memanggil OnLButtonDown penanganan aktivitas. Metode CMFCColorButton::OnShowColorPopup dapat ditimpa untuk mendukung pemilihan warna kustom.

Objek CMFCColorButton memberi tahu induknya bahwa warna berubah dengan mengirimkannya WM_COMMAND | BN_CLICKED pemberitahuan. Induk menggunakan metode CMFCColorButton::GetColor untuk mengambil warna saat ini.

Contoh

Contoh berikut menunjukkan cara mengonfigurasi tombol warna dengan menggunakan berbagai metode di CMFCColorButton kelas . Metode mengatur warna tombol warna dan jumlah kolomnya, dan mengaktifkan tombol otomatis dan lainnya. Contoh ini adalah bagian dari sampel Demo Bilah Status.

CMFCColorButton m_wndTextColor;
m_wndTextColor.EnableAutomaticButton(_T("Default"), afxGlobalData.clrBtnText);
m_wndTextColor.EnableOtherButton(_T("Other..."));
m_wndTextColor.SetColor((COLORREF)-1);
m_wndTextColor.SetColorName((COLORREF)-1, "Default Color");
m_wndTextColor.SetColumnsNumber(3);

Persyaratan

Header: afxcolorbutton.h

CMFCColorButton::CMFCColorButton

Membuat objek baru CMFCColorButton .

CMFCColorButton();

CMFCColorButton::EnableAutomaticButton

Aktifkan atau nonaktifkan tombol "otomatis" kontrol pemilih warna dan atur warna otomatis (default).

void EnableAutomaticButton(
    LPCTSTR lpszLabel,
    COLORREF colorAutomatic,
    BOOL bEnable=TRUE);

Parameter

lpszLabel
[di] Menentukan teks tombol otomatis.

colorAutomatic
[di] Nilai RGB yang menentukan warna default tombol otomatis.

bEnable
[di] Menentukan apakah tombol otomatis diaktifkan atau dinonaktifkan.

Keterangan

CMFCColorButton::EnableOtherButton

Aktifkan atau nonaktifkan tombol "lainnya", yang muncul di bawah tombol warna reguler.

void EnableOtherButton(
    LPCTSTR lpszLabel,
    BOOL bAltColorDlg=TRUE,
    BOOL bEnable=TRUE);

Parameter

lpszLabel
[di] Menentukan teks tombol.

bAltColorDlg
[di] Menentukan apakah kotak dialog CMFCColorDialog atau kotak dialog warna sistem dibuka saat pengguna mengklik tombol .

bEnable
[di] Menentukan apakah tombol "lainnya" diaktifkan atau dinonaktifkan.

Keterangan

Klik tombol "lainnya" untuk menampilkan kotak dialog warna. Jika parameter bAltColorDlg TRUE, Kelas CMFCColorDialog ditampilkan; jika tidak, kotak dialog warna sistem ditampilkan.

CMFCColorButton::GetAutomaticColor

Mengambil warna otomatis (default) saat ini.

COLORREF GetAutomaticColor() const;

Tampilkan Nilai

Nilai RGB yang mewakili warna otomatis saat ini.

Keterangan

Warna otomatis saat ini diatur oleh metode CMFCColorButton::EnableAutomaticButton .

CMFCColorButton::GetColor

Mengambil warna terpilih saat ini.

COLORREF GetColor() const;

Tampilkan Nilai

Nilai RGB.

Keterangan

CMFCColorButton::IsDrawXPTheme

Menunjukkan apakah tombol warna saat ini ditampilkan dalam gaya visual Windows XP.

BOOL IsDrawXPTheme() const;

Tampilkan Nilai

TRUE jika gaya visual didukung dan tombol warna saat ini ditampilkan dalam gaya visual Windows XP; jika tidak, FALSE.

CMFCColorButton::m_bEnabledInCustomizeMode

Mengatur tombol warna ke mode kustomisasi.

BOOL m_bEnabledInCustomizeMode;

Keterangan

Jika Anda perlu menambahkan tombol warna ke halaman dialog kustomisasi (atau mengizinkan pengguna membuat pilihan warna lain selama kustomisasi), aktifkan tombol dengan mengatur m_bEnabledInCustomizeMode anggota ke TRUE. Secara default, anggota ini diatur ke FALSE.

CMFCColorButton::OnDraw

Dipanggil oleh kerangka kerja untuk merender gambar tombol.

virtual void OnDraw(
    CDC* pDC,
    const CRect& rect,
    UINT uiState);

Parameter

pDC
[di] Arahkan ke konteks perangkat yang digunakan untuk merender gambar tombol.

rect
[di] Persegi panjang yang mengikat tombol.

uiState
[di] Menentukan status visual tombol.

Keterangan

Ambil alih metode ini untuk menyesuaikan proses penyajian.

CMFCColorButton::OnDrawBorder

Dipanggil oleh kerangka kerja untuk menampilkan batas tombol.

virtual void OnDrawBorder(
    CDC* pDC,
    CRect& rectClient,
    UINT uiState);

Parameter

pDC
[di] Arahkan ke konteks perangkat yang digunakan untuk menggambar batas.

rectClient
[di] Persegi panjang dalam konteks perangkat yang ditentukan oleh parameter pDC yang menentukan batas tombol yang akan digambar.

uiState
[di] Menentukan status visual tombol.

Keterangan

Ambil alih fungsi ini untuk mengkustomisasi tampilan batas tombol warna.

CMFCColorButton::OnDrawFocusRect

Dipanggil oleh kerangka kerja untuk menampilkan persegi panjang fokus saat tombol memiliki fokus.

virtual void OnDrawFocusRect(
    CDC* pDC,
    const CRect& rectClient);

Parameter

pDC
[di] Arahkan ke konteks perangkat yang digunakan untuk menggambar persegi panjang fokus.

rectClient
[di] Persegi panjang dalam konteks perangkat yang ditentukan oleh parameter pDC yang menentukan batas tombol.

Keterangan

Ambil alih metode ini untuk menyesuaikan tampilan persegi panjang fokus.

CMFCColorButton::OnShowColorPopup

Dipanggil sebelum bilah warna popup ditampilkan.

virtual void OnShowColorPopup();

Keterangan

CMFCColorButton::RebuildPalette

Menginisialisasi anggota data yang m_pPalette dilindungi ke palet yang ditentukan atau palet sistem default.

void RebuildPalette(CPalette* pPal);

Parameter

pPal
[di] Penunjuk ke palet logis atau NULL. Jika NULL, palet sistem default digunakan.

CMFCColorButton::SetColor

Menentukan warna tombol.

void SetColor(COLORREF color);

Parameter

warna
[di] Nilai RGB.

Keterangan

CMFCColorButton::SetColorName

Menentukan nama warna.

static void SetColorName(
    COLORREF color,
    const CString& strName);

Parameter

warna
[di] Nilai RGB warna.

strName
[di] Nama warna.

Keterangan

Daftar nama warna bersifat global per aplikasi. Akibatnya, metode ini mentransfer parameternya ke CMFCColorBar::SetColorName.

CMFCColorButton::SetColumnsNumber

Menentukan jumlah kolom yang ditampilkan dalam tabel warna yang disajikan kepada pengguna selama proses pemilihan warna pengguna.

void SetColumnsNumber(int nColumns);

Parameter

nColumns
[di] Menentukan jumlah kolom.

Keterangan

Pengguna dapat memilih warna dari bilah warna popup yang menampilkan tabel warna yang telah ditentukan sebelumnya. Gunakan metode ini untuk menentukan jumlah kolom dalam tabel.

CMFCColorButton::SetDocumentColors

Menentukan sekumpulan warna dan nama set. Kumpulan warna ditampilkan menggunakan objek Kelas CMFCColorBar.

void SetDocumentColors(
    LPCTSTR lpszLabel,
    CList<COLORREF,COLORREF>& lstColors);

Parameter

lpszLabel
[di] Menentukan label yang akan ditampilkan dengan sekumpulan warna dokumen.

lstColors
[di] Referensi ke daftar nilai RGB.

Keterangan

Objek CMFCColorButton mempertahankan daftar nilai RGB yang ditransfer ke objek Kelas CMFCColorBar. Ketika bilah warna ditampilkan, warna-warna ini ditampilkan di bagian khusus yang labelnya ditentukan oleh parameter lpszLabel .

CMFCColorButton::SetPalette

Menentukan warna standar yang akan ditampilkan pada bilah warna popup.

void SetPalette(CPalette* pPalette);

Parameter

pPalette
[di] Penunjuk ke palet warna.

Keterangan

CMFCColorButton::SizeToContent

Mengubah ukuran kontrol tombol agar pas dengan teks dan gambarnya.

virtual CSize SizeToContent(BOOL bCalcOnly=FALSE);

Parameter

bCalcOnly
[di] Jika bukan nol, ukuran baru kontrol tombol dihitung tetapi ukuran aktual tidak diubah.

Tampilkan Nilai

Objek CSize yang menentukan ukuran kontrol tombol baru.

Keterangan

CMFCColorButton::UpdateColor

Dipanggil oleh kerangka kerja saat pengguna memilih warna dari bilah warna yang ditampilkan saat pengguna mengklik tombol warna.

virtual void UpdateColor(COLORREF color);

Parameter

warna
[di] Warna yang dipilih oleh pengguna.

Keterangan

Fungsi mengubah UpdateColor warna tombol yang saat ini dipilih dan memberi tahu induknya dengan mengirim pesan WM_COMMAND dengan pemberitahuan standar BN_CLICKED. Gunakan metode CMFCColorButton::GetColor untuk mengambil warna yang dipilih.

Lihat juga

Bagan Hierarki
Kelas
Kelas CMFCButton
Kelas CMFCColorBar
CMFCColorButton::OnShowColorPopup
COLORREF
Kelas CPalette
Kelas CArray
Kelas CList
CString