Fungsi AppendMenuW (winuser.h)
Menambahkan item baru ke akhir bilah menu, menu drop-down, submenu, atau menu pintasan yang ditentukan. Anda dapat menggunakan fungsi ini untuk menentukan konten, tampilan, dan perilaku item menu.
Sintaksis
BOOL AppendMenuW(
[in] HMENU hMenu,
[in] UINT uFlags,
[in] UINT_PTR uIDNewItem,
[in, optional] LPCWSTR lpNewItem
);
Parameter
[in] hMenu
Jenis: HMENU
Handel ke bilah menu, menu drop-down, submenu, atau menu pintasan yang akan diubah.
[in] uFlags
Jenis: UINT
Mengontrol tampilan dan perilaku item menu baru. Parameter ini bisa menjadi kombinasi dari nilai berikut.
Nilai | Arti |
---|---|
|
Menggunakan bitmap sebagai item menu. Parameter lpNewItem |
|
Tempatkan tanda centang di samping item menu. Jika aplikasi menyediakan bitmap tanda centang (lihat SetMenuItemBitmaps, bendera ini menampilkan bitmap tanda centang di samping item menu. |
|
Menonaktifkan item menu sehingga tidak dapat dipilih, tetapi bendera tidak berwarna abu-abu. |
|
Mengaktifkan item menu sehingga dapat dipilih, dan memulihkannya dari status abu-abu. |
|
Menon-fungsikan item menu dan berwarna abu-abu sehingga tidak dapat dipilih. |
|
Fungsinya sama dengan bendera MF_MENUBREAK untuk bilah menu. Untuk menu drop-down, submenu, atau menu pintasan, kolom baru dipisahkan dari kolom lama dengan garis vertikal. |
|
Tempatkan item pada baris baru (untuk bilah menu) atau di kolom baru (untuk menu drop-down, submenu, atau menu pintasan) tanpa memisahkan kolom. |
|
Menentukan bahwa item adalah item yang digambar pemilik. Sebelum menu ditampilkan untuk pertama kalinya, jendela yang memiliki menu menerima pesan WM_MEASUREITEM untuk mengambil lebar dan tinggi item menu. Pesan WM_DRAWITEM kemudian dikirim ke prosedur jendela jendela pemilik setiap kali tampilan item menu harus diperbarui. |
|
Menentukan bahwa item menu membuka menu drop-down atau submenu. Parameter uIDNewItem |
|
Menggambar garis pembagian horizontal. Bendera ini hanya digunakan di menu drop-down, submenu, atau menu pintasan. Garis tidak dapat berwarna abu-abu, dinonaktifkan, atau disorot. Parameter lpNewItem dan uIDNewItem diabaikan. |
|
Menentukan bahwa item menu adalah string teks; parameter lpNewItem |
|
Tidak menempatkan tanda centang di samping item (default). Jika aplikasi menyediakan bitmap tanda centang (lihat SetMenuItemBitmaps), bendera ini menampilkan bitmap yang jelas di samping item menu. |
[in] uIDNewItem
Jenis: UINT_PTR
Pengidentifikasi item menu baru atau, jika parameter uFlags diatur ke MF_POPUP, handel ke menu drop-down atau submenu.
[in, optional] lpNewItem
Jenis:
Konten item menu baru. Interpretasi
Mengembalikan nilai
Jenis: BOOL
Jika fungsi berhasil, nilai yang dikembalikan bukan nol. Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError.
Komentar
Aplikasi harus memanggil fungsi
Untuk mendapatkan akselerator keyboard agar berfungsi dengan bitmap atau item menu yang digambar pemilik, pemilik menu harus memproses pesan WM_MENUCHAR. Untuk informasi selengkapnya, lihat Menu Owner-Drawn danPesan WM_MENUCHAR .
Grup bendera berikut tidak dapat digunakan bersama-sama:
- MF_BITMAP, MF_STRING, dan MF_OWNERDRAW
- MF_CHECKED dan MF_UNCHECKED
- MF_DISABLED, MF_ENABLED, dan MF_GRAYED
- MF_MENUBARBREAK dan MF_MENUBREAK
Contoh
Misalnya, lihat Menambahkan Garis dan Grafik ke Menu.
Nota
Header winuser.h mendefinisikan AppendMenu sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedur UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Platform Target |
Windows |
Header |
winuser.h (termasuk Windows.h) |
Pustaka |
User32.lib |
DLL |
User32.dll |
set API |
ext-ms-win-ntuser-menu-l1-1-0 (diperkenalkan di Windows 8) |
Lihat juga
Konseptual
InsertMenuItem
Menu
Referensi
SetMenuItemBitmaps