Dasar-Dasar Toolbar
Artikel ini menjelaskan implementasi MFC dasar yang memungkinkan Anda menambahkan toolbar default ke aplikasi Anda dengan memilih opsi di Wizard Aplikasi. Topik yang dibahas meliputi:
Opsi Toolbar Wizard Aplikasi
Untuk mendapatkan toolbar tunggal dengan tombol default, pilih opsi toolbar Docking Standar pada halaman berlabel Fitur Antarmuka Pengguna. Ini menambahkan kode ke aplikasi Anda yang:
Membuat objek bilah alat.
Mengelola toolbar, termasuk kemampuannya untuk merapat atau mengambang.
Bilah Alat dalam Kode
Toolbar adalah objek CToolBar yang dideklarasikan sebagai anggota data kelas aplikasi CMainFrame
Anda. Dengan kata lain, objek toolbar disematkan di objek jendela bingkai utama. Ini berarti bahwa MFC membuat toolbar saat membuat jendela bingkai dan menghancurkan toolbar saat menghancurkan jendela bingkai. Deklarasi kelas parsial berikut, untuk aplikasi antarmuka beberapa dokumen (MDI), memperlihatkan anggota data untuk toolbar yang disematkan dan bilah status yang disematkan. Ini juga menunjukkan penimpaan OnCreate
fungsi anggota.
class CMainFrame : public CMDIFrameWnd
{
// Implementation
protected: // control bar embedded members
CStatusBar m_wndStatusBar;
CToolBar m_wndToolBar;
// Generated message map functions
protected:
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
DECLARE_MESSAGE_MAP()
Pembuatan toolbar terjadi di CMainFrame::OnCreate
. MFC memanggil OnCreate setelah membuat jendela untuk bingkai tetapi sebelum terlihat. Default OnCreate
yang dihasilkan Panduan Aplikasi melakukan tugas toolbar berikut:
Memanggil fungsi Buat anggota objek untuk membuat objek CToolBarCtrl yang mendasar
CToolBar
.Memanggil LoadToolBar untuk memuat informasi sumber daya toolbar.
Memanggil fungsi untuk mengaktifkan tips docking, floating, dan alat. Untuk detail tentang panggilan ini, lihat artikel Bilah Alat Docking dan Floating.
Catatan
SAMPEL Umum MFC DOCKTOOL menyertakan ilustrasi toolbar MFC lama dan baru. Toolbar yang menggunakan COldToolbar
memerlukan panggilan di langkah 2 ke LoadBitmap
(bukan LoadToolBar
) dan ke SetButtons
. Toolbar baru memerlukan panggilan ke LoadToolBar
.
Panggilan tips docking, floating, dan tool bersifat opsional. Anda dapat menghapus baris tersebut dari OnCreate
jika mau. Hasilnya adalah toolbar yang tetap diperbaiki, tidak dapat mengambang atau me-redock dan tidak dapat menampilkan tips alat.
Mengedit Sumber Daya Toolbar
Toolbar default yang Anda dapatkan dengan Panduan Aplikasi didasarkan pada sumber daya kustom RT_TOOLBAR , yang diperkenalkan dalam MFC versi 4.0. Anda dapat mengedit sumber daya ini dengan editor toolbar. Editor memungkinkan Anda dengan mudah menambahkan, menghapus, dan mengatur ulang tombol. Ini berisi editor grafis untuk tombol yang sangat mirip dengan editor grafis umum di Visual C++. Jika Anda mengedit toolbar di versi Visual C++sebelumnya, Anda akan menemukan tugas dengan jauh lebih mudah sekarang.
Untuk menyambungkan tombol toolbar ke perintah, Anda memberi tombol ID perintah, seperti ID_MYCOMMAND
. Tentukan ID perintah di halaman properti tombol di editor toolbar. Kemudian buat fungsi handler untuk perintah (lihat Memetakan Pesan ke Functions untuk informasi selengkapnya).
Fungsi anggota CToolBar baru berfungsi dengan sumber daya RT_TOOLBAR. LoadToolBar sekarang menggantikan LoadBitmap untuk memuat bitmap gambar tombol toolbar, dan SetButtons untuk mengatur gaya tombol dan menyambungkan tombol dengan gambar bitmap.
Untuk detail tentang menggunakan editor toolbar, lihat Editor Toolbar.
Beberapa Bilah Alat
Panduan Aplikasi memberi Anda satu bilah alat default. Jika Anda memerlukan lebih dari satu toolbar di aplikasi, Anda dapat memodelkan kode untuk toolbar tambahan berdasarkan kode yang dihasilkan wizard untuk toolbar default.
Jika Anda ingin menampilkan toolbar sebagai hasil dari perintah, Anda harus:
Buat sumber daya toolbar baru dengan editor toolbar dan muat
OnCreate
dengan fungsi anggota LoadToolbar .Sematkan objek CToolBar baru di kelas jendela bingkai utama Anda.
Lakukan panggilan
OnCreate
fungsi yang sesuai untuk menambatkan atau mengambangkan toolbar, mengatur gayanya, dan sebagainya.