Bagikan melalui


Kelas CMFCDropDownToolbarButton

Jenis tombol toolbar yang bersifat seperti tombol biasa saat diklik. Namun, ia membuka toolbar drop-down ( Kelas CMFCDropDownToolBar jika pengguna menekan dan menahan tombol toolbar ke bawah.

Sintaks

class CMFCDropDownToolbarButton : public CMFCToolBarButton

Anggota

Konstruktor Publik

Nama Deskripsi
CMFCDropDownToolbarButton::CMFCDropDownToolbarButton Membuat CMFCDropDownToolbarButton objek.
CMFCDropDownToolbarButton::~CMFCDropDownToolbarButton Destruktor.

Metode Publik

Nama Deskripsi
CMFCDropDownToolbarButton::CopyFrom Menyalin properti tombol bilah alat lain ke tombol saat ini. (Penimpaan CMFCToolBarButton::CopyFrom.)
CMFCDropDownToolbarButton::CreateObject Digunakan oleh kerangka kerja untuk membuat instans dinamis dari jenis kelas ini.
CMFCDropDownToolbarButton::D ropDownToolbar Membuka bilah alat drop-down.
CMFCDropDownToolbarButton::ExportToMenuButton Menyalin teks dari tombol toolbar ke menu. (Penimpaan CMFCToolBarButton::ExportToMenuButton.)
CMFCDropDownToolbarButton::GetDropDownToolBar Mengambil bilah alat drop-down yang terkait dengan tombol .
CMFCDropDownToolbarButton::GetThisClass Digunakan oleh kerangka kerja untuk mendapatkan penunjuk ke objek CRuntimeClass yang terkait dengan jenis kelas ini.
CMFCDropDownToolbarButton::IsDropDown Menentukan apakah bilah alat drop-down saat ini terbuka.
CMFCDropDownToolbarButton::IsExtraSize Menentukan apakah tombol dapat ditampilkan dengan batas yang diperluas. (Penimpaan CMFCToolBarButton::IsExtraSize.)
CMFCDropDownToolbarButton::OnCalculateSize Dipanggil oleh kerangka kerja untuk menghitung ukuran tombol untuk konteks perangkat dan status docking yang ditentukan. (Penimpaan CMFCToolBarButton::OnCalculateSize.)
CMFCDropDownToolbarButton::OnCancelMode Dipanggil oleh kerangka kerja untuk menangani pesan WM_CANCELMODE . (Mengambil alih CMCToolBarButton::OnCancelMode.)
CMFCDropDownToolbarButton::OnChangeParentWnd Dipanggil oleh kerangka kerja saat tombol disisipkan ke toolbar baru. (Penimpaan CMFCToolBarButton::OnChangeParentWnd.)
CMFCDropDownToolbarButton::OnClick Dipanggil oleh kerangka kerja ketika pengguna mengklik tombol mouse. (Penimpaan CMFCToolBarButton::OnClick.)
CMFCDropDownToolbarButton::OnClickUp Dipanggil oleh kerangka kerja ketika pengguna merilis tombol mouse. (Penimpaan CMFCToolBarButton::OnClickUp.)
CMFCDropDownToolbarButton::OnContextHelp Dipanggil oleh kerangka kerja saat toolbar induk menangani pesan WM_HELPHITTEST. (Penimpaan CMFCToolBarButton::OnContextHelp.)
CMFCDropDownToolbarButton::OnCustomizeMenu Memodifikasi menu yang disediakan saat aplikasi menampilkan menu pintasan pada toolbar induk. (Penimpaan CMFCToolBarButton::OnCustomizeMenu.)
CMFCDropDownToolbarButton::OnDraw Dipanggil oleh kerangka kerja untuk menggambar tombol dengan menggunakan gaya dan opsi yang ditentukan. (Penimpaan CMFCToolBarButton::OnDraw.)
CMFCDropDownToolbarButton::OnDrawOnCustomizeList Dipanggil oleh kerangka kerja untuk menggambar tombol di panel Perintah dari kotak dialog Kustomisasi. (Penimpaan CMFCToolBarButton::OnDrawOnCustomizeList.)
CMFCDropDownToolbarButton::Serialize Membaca objek ini dari arsip atau menulisnya ke arsip. (Penimpaan CMFCToolBarButton::Serialize.)
CMFCDropDownToolbarButton::SetDefaultCommand Mengatur perintah default yang digunakan kerangka kerja saat pengguna mengklik tombol .

Anggota Data

Nama Deskripsi
CMFCDropDownToolbarButton::m_uiShowBarDelay Menentukan lamanya waktu pengguna harus menahan tombol mouse ke bawah sebelum toolbar drop-down muncul.

Keterangan

Berbeda CMFCDropDownToolBarButton dari tombol biasa karena memiliki panah kecil di sudut kanan bawah tombol. Setelah pengguna memilih tombol dari toolbar drop-down, kerangka kerja menampilkan ikonnya pada tombol toolbar tingkat atas (tombol dengan panah kecil di sudut kanan bawah).

Untuk informasi tentang cara menerapkan toolbar drop-down, lihat Kelas CMFCDropDownToolBar.

Objek CMFCDropDownToolBarButton dapat diekspor ke objek Kelas CMFCToolBarMenuButton dan ditampilkan sebagai tombol menu dengan menu pop-up.

Hierarki Warisan

CObject

CMFCToolBarButton

CMFCDropDownToolbarButton

Persyaratan

Header: afxdropdowntoolbar.h

CMFCDropDownToolbarButton::CopyFrom

Menyalin properti tombol bilah alat lain ke tombol saat ini.

virtual void CopyFrom(const CMFCToolBarButton& src);

Parameter

src
[di] Referensi ke tombol sumber yang akan disalin.

Keterangan

Panggil metode ini untuk menyalin tombol bilah alat lain ke tombol bilah alat ini. src harus berjenis CMFCDropDownToolbarButton.

CMFCDropDownToolbarButton::CMFCDropDownToolbarButton

Membuat CMFCDropDownToolbarButton objek.

CMFCDropDownToolbarButton();

CMFCDropDownToolbarButton(
    LPCTSTR lpszName,
    CMFCDropDownToolBar* pToolBar);

Parameter

lpszName
[di] Teks default tombol.

pToolBar
[di] Penunjuk ke CMFCDropDownToolBar objek yang ditampilkan saat pengguna menekan tombol .

Keterangan

Kelebihan beban kedua konstruktor menyalin ke tombol drop-down tombol pertama dari toolbar yang ditentukan pToolBar .

Biasanya, tombol bilah alat drop-down menggunakan teks dari tombol yang terakhir digunakan di toolbar yang ditentukan pToolBar . Ini menggunakan teks yang ditentukan oleh lpszName saat tombol dikonversi ke tombol menu atau ditampilkan di tab Perintah dari kotak dialog Kustomisasi . Untuk informasi selengkapnya tentang kotak dialog Kustomisasi , lihat CMFCToolBarsCustomizeDialog Class.

Contoh

Contoh berikut menunjukkan cara membuat objek CMFCDropDownToolbarButton kelas. Cuplikan kode ini adalah bagian dari sampel Demo Visual Studio.

// Add dropdown resources button
// CMFCToolBarsCustomizeDialog* pDlgCust
// CMFCDropDownToolBar m_wndToolbarResource
pDlgCust->AddButton(_T("Build"), CMFCDropDownToolbarButton(_T("Add Resource"), &m_wndToolbarResource));

Membuka bilah alat drop-down.

BOOL DropDownToolbar(CWnd* pWnd);

Parameter

pWnd
[di] Jendela induk bingkai drop-down, atau NULL untuk menggunakan jendela induk tombol bilah alat drop-down.

Tampilkan Nilai

Bukan nol jika metode berhasil; jika tidak, 0.

Keterangan

Metode CMFCDropDownToolbarButton::OnClick memanggil metode ini untuk membuka toolbar drop-down saat pengguna menekan dan menahan tombol toolbar ke bawah.

Metode ini membuat toolbar drop-down dengan menggunakan metode CMFCDropDownFrame::Create . Jika toolbar induk ditampuk secara vertikal, metode ini memposisikan toolbar drop-down baik ke sisi kiri atau kanan toolbar induk, tergantung pada kecocokan. Jika tidak, metode ini memposisikan toolbar drop-down di bawah toolbar induk.

Metode ini gagal jika pWnd adalah NULL dan tombol toolbar drop-down tidak memiliki jendela induk.

CMFCDropDownToolbarButton::ExportToMenuButton

Menyalin teks dari tombol toolbar ke menu.

virtual BOOL ExportToMenuButton(CMFCToolBarMenuButton& menuButton) const;

Parameter

menuButton
[di] Referensi ke tombol menu target.

Tampilkan Nilai

Bukan nol jika metode berhasil; jika tidak, 0.

Keterangan

Metode ini memanggil implementasi kelas dasar ( CMFCToolBarButton::ExportToMenuButton) dan kemudian menambahkan ke tombol menu target menu pop-up yang berisi setiap item menu toolbar di tombol ini. Metode ini tidak menambahkan sub-menu ke menu pop-up.

Metode ini gagal jika toolbar induk, m_pToolBar, adalah NULL atau implementasi kelas dasar mengembalikan FALSE.

CMFCDropDownToolbarButton::GetDropDownToolBar

Mengambil bilah alat drop-down yang terkait dengan tombol .

CMFCToolBar* GetDropDownToolBar() const;

Tampilkan Nilai

Bilah alat drop-down yang terkait dengan tombol .

Keterangan

Metode ini mengembalikan m_pToolBar anggota data.

CMFCDropDownToolbarButton::IsDropDown

Menentukan apakah bilah alat drop-down saat ini terbuka.

BOOL IsDropDown() const;

Tampilkan Nilai

Nonzero jika toolbar drop-down saat ini terbuka; jika tidak, 0.

Keterangan

Kerangka kerja membuka toolbar drop-down dengan menggunakan metode CMFCDropDownToolbarButton::D ropDownToolbar . Kerangka kerja menutup toolbar drop-down saat pengguna menekan tombol mouse kiri di area non-klien toolbar drop-down.

CMFCDropDownToolbarButton::IsExtraSize

Menentukan apakah tombol dapat ditampilkan dengan batas yang diperluas.

virtual BOOL IsExtraSize() const;

Tampilkan Nilai

Bukan nol jika tombol toolbar dapat ditampilkan dengan batas yang diperluas; jika tidak, 0.

Keterangan

Untuk informasi selengkapnya tentang batas yang diperluas, lihat CMFCToolBarButton::IsExtraSize.

CMFCDropDownToolbarButton::m_uiShowBarDelay

Menentukan lamanya waktu pengguna harus menahan tombol mouse ke bawah sebelum toolbar drop-down muncul.

static UINT m_uiShowBarDelay;

Keterangan

Waktu penundaan diukur dalam milidetik. Nilai default adalah 500. Anda dapat mengatur penundaan lain dengan mengubah nilai anggota data bersama ini.

CMFCDropDownToolbarButton::OnCalculateSize

Dipanggil oleh kerangka kerja untuk menghitung ukuran tombol untuk konteks perangkat dan status docking yang ditentukan.

virtual SIZE OnCalculateSize(
    CDC* pDC,
    const CSize& sizeDefault,
    BOOL bHorz);

Parameter

pDC
[di] Konteks perangkat yang menampilkan tombol .

sizeDefault
[di] Ukuran default tombol.

bHorz
[di] Status dok toolbar induk. Parameter ini TRUE jika toolbar ditampar secara horizontal atau mengambang, atau FALSE jika toolbar ditampuk secara vertikal.

Tampilkan Nilai

Struktur SIZE yang berisi dimensi tombol, dalam piksel.

Keterangan

Metode ini memperluas implementasi kelas dasar ( CMFCToolBarButton::OnCalculateSize) dengan menambahkan lebar panah drop-down ke dimensi horizontal dari ukuran tombol.

CMFCDropDownToolbarButton::OnChangeParentWnd

Dipanggil oleh kerangka kerja saat tombol disisipkan ke toolbar baru.

virtual void OnChangeParentWnd(CWnd* pWndParent);

Parameter

pWndParent
[di] Jendela induk baru.

Keterangan

Metode ini mengambil alih implementasi kelas dasar ( CMFCToolBarButton::OnChangeParentWnd) dengan menghapus label teks ( CMFCToolBarButton::m_strText) dan mengatur CMFCToolBarButton::m_bText dan CMFCToolBarButton::m_bUserButton anggota data ke FALSE.

CMFCDropDownToolbarButton::OnClick

Dipanggil oleh kerangka kerja ketika pengguna mengklik tombol mouse.

virtual BOOL OnClick(
    CWnd* pWnd,
    BOOL bDelay = TRUE);

Parameter

pWnd
[di] Jendela induk tombol toolbar.

bDelay
[di] TRUE jika pesan harus ditangani dengan penundaan.

Tampilkan Nilai

Bukan nol jika tombol memproses pesan klik; jika tidak, 0.

Keterangan

Metode ini memperluas implementasi kelas dasar, CMFCToolBarButton::OnClick, dengan memperbarui status toolbar drop-down.

Ketika pengguna mengklik tombol toolbar, metode ini membuat timer yang menunggu lamanya waktu yang ditentukan oleh cmFCDropDownToolbarButton::m_uiShowBarDelay anggota data lalu membuka toolbar drop-down dengan menggunakan metode CMFCDropDownToolbarButton::D ropDownToolbar . Metode ini menutup bilah alat drop-down untuk kedua kalinya pengguna mengklik tombol toolbar.

CMFCDropDownToolbarButton::OnClickUp

Dipanggil oleh kerangka kerja ketika pengguna merilis tombol mouse.

virtual BOOL OnClickUp();

Tampilkan Nilai

Bukan nol jika tombol memproses pesan klik; jika tidak, 0.

Keterangan

Metode ini memperluas implementasi kelas dasar, CMFCToolBarButton::OnClickUp, dengan memperbarui status toolbar drop-down.

Metode ini menghentikan timer toolbar drop-down jika aktif. Ini menutup bilah alat drop-down jika terbuka.

Untuk informasi selengkapnya tentang toolbar drop-down dan timer toolbar drop-down, lihat CMFCDropDownToolbarButton::OnClick.

CMFCDropDownToolbarButton::OnContextHelp

Dipanggil oleh kerangka kerja saat toolbar induk menangani pesan WM_HELPHITTEST.

virtual BOOL OnContextHelp(CWnd* pWnd);

Parameter

pWnd
[di] Jendela induk tombol toolbar.

Tampilkan Nilai

Bukan nol jika tombol memproses pesan bantuan; jika tidak, 0.

Keterangan

Metode ini memperluas implementasi kelas dasar ( CMFCToolBarButton::OnContextHelp) dengan memanggil metode CMFCDropDownToolbarButton::OnClick dengan bDelay diatur ke FALSE. Metode ini mengembalikan nilai yang dikembalikan oleh CMFCDropDownToolbarButton::OnClick.

Untuk informasi selengkapnya tentang pesan WM_HELPHITTEST, lihat TN028: Dukungan Bantuan Peka Konteks.

CMFCDropDownToolbarButton::OnCustomizeMenu

Memodifikasi menu yang disediakan saat aplikasi menampilkan menu pintasan pada toolbar induk.

virtual BOOL OnCustomizeMenu(CMenu* pMenu);

Parameter

pMenu
[di] Menu yang akan dikustomisasi.

Tampilkan Nilai

Metode ini mengembalikan TRUE.

Keterangan

Metode ini memperluas implementasi kelas dasar ( CMFCToolBarButton::OnCustomizeMenu) dengan menonaktifkan item menu berikut:

  • Salin Gambar Tombol

  • Tampilan Tombol

  • Gambar

  • Teks

  • Gambar dan Teks

Ambil alih metode ini untuk mengubah menu pintasan yang ditampilkan kerangka kerja dalam mode kustomisasi.

CMFCDropDownToolbarButton::OnDraw

Dipanggil oleh kerangka kerja untuk menggambar tombol dengan menggunakan gaya dan opsi yang ditentukan.

virtual void OnDraw(
    CDC* pDC,
    const CRect& rect,
    CMFCToolBarImages* pImages,
    BOOL bHorz = TRUE,
    BOOL bCustomizeMode = FALSE,
    BOOL bHighlight = FALSE,
    BOOL bDrawBorder = TRUE,
    BOOL bGrayDisabledButtons = TRUE);

Parameter

pDC
[di] Konteks perangkat yang menampilkan tombol .

rect
[di] Persegi panjang pembatas tombol.

pImages
[di] Kumpulan gambar toolbar yang terkait dengan tombol .

bHorz
[di] Status dok toolbar induk. Parameter ini TRUE ketika tombol ditampar secara horizontal dan FALSE saat tombol ditampar secara vertikal.

bCustomizeMode
[di] Menentukan apakah toolbar berada dalam mode kustomisasi. Parameter ini TRUE ketika toolbar berada dalam mode kustomisasi dan FALSE ketika toolbar tidak dalam mode kustomisasi.

bHighlight
[di] Menentukan apakah tombol disorot. Parameter ini TRUE ketika tombol disorot dan FALSE ketika tombol tidak disorot.

bDrawBorder
[di] Menentukan apakah tombol harus menampilkan batasnya. Parameter ini TRUE ketika tombol harus menampilkan batas dan FALSE ketika tombol tidak boleh menampilkan batasnya.

bGrayDisabledButtons
[di] Menentukan apakah akan menaungi tombol yang dinonaktifkan atau menggunakan kumpulan gambar yang dinonaktifkan. Parameter ini TRUE ketika tombol yang dinonaktifkan harus berbayang dan FALSE ketika metode ini harus menggunakan koleksi gambar yang dinonaktifkan.

Keterangan

Ambil alih metode ini untuk menyesuaikan gambar tombol bilah alat.

CMFCDropDownToolbarButton::OnDrawOnCustomizeList

Dipanggil oleh kerangka kerja untuk menggambar tombol di panel Perintah dari kotak dialog Kustomisasi.

virtual int OnDrawOnCustomizeList(
    CDC* pDC,
    const CRect& rect,
    BOOL bSelected);

Parameter

pDC
[di] Konteks perangkat yang menampilkan tombol .

rect
[di] Persegi panjang pembatas tombol.

bPilih
[di] Apakah tombol dipilih. Jika parameter ini TRUE, tombol dipilih. Jika parameter ini FALSE, tombol tidak dipilih.

Tampilkan Nilai

Lebar, dalam piksel, tombol pada konteks perangkat yang ditentukan.

Keterangan

Metode ini dipanggil oleh kotak dialog kustomisasi ( tab Perintah ) ketika tombol diperlukan untuk menampilkan dirinya sendiri pada kotak daftar gambar pemilik.

Metode ini memperluas implementasi kelas dasar ( CMFCToolBarButton::OnDrawOnCustomizeList) dengan mengubah label teks tombol ke nama tombol (yaitu, ke nilai parameter lpszName yang Anda teruskan ke konstruktor).

CMFCDropDownToolbarButton::Serialize

Membaca objek ini dari arsip atau menulisnya ke arsip.

virtual void Serialize(CArchive& ar);

Parameter

Ar
[di] Objek CArchive dari mana atau yang akan diserialisasikan.

Keterangan

Metode ini memperluas implementasi kelas dasar ( CMFCToolBarButton::Serialize) dengan menserialisasikan ID sumber daya toolbar induk. Saat arsip dimuat ( CArchive::IsLoading mengembalikan nilai bukan nol), metode ini mengatur m_pToolBar anggota data ke toolbar yang berisi ID sumber daya berseri.

CMFCDropDownToolbarButton::SetDefaultCommand

Mengatur perintah default yang digunakan kerangka kerja saat pengguna mengklik tombol .

void SetDefaultCommand(UINT uiCmd);

Parameter

uiCmd
[di] ID perintah default.

Keterangan

Panggil metode ini untuk menentukan perintah default yang dijalankan kerangka kerja saat pengguna mengklik tombol . Item dengan ID perintah yang ditentukan oleh uiCmd harus terletak di toolbar drop-down induk.

Lihat juga

Bagan Hierarki
Kelas
Kelas CMFCDropDownToolBar
Kelas CMFCToolBar
Kelas CMFCToolBarMenuButton
Panduan: Menempatkan Kontrol Pada Toolbar