fungsi Shell_NotifyIconA (shellapi.h)
Mengirim pesan ke area status bilah tugas.
Sintaks
BOOL Shell_NotifyIconA(
[in] DWORD dwMessage,
[in] PNOTIFYICONDATAA lpData
);
Parameter
[in] dwMessage
Jenis: DWORD
Nilai yang menentukan tindakan yang akan diambil oleh fungsi ini. Ini bisa memiliki salah satu nilai berikut:
NIM_ADD (0x00000000)
0x00000000. Menambahkan ikon ke area status. Ikon diberi pengidentifikasi dalam struktur NOTIFYICONDATA yang ditujukkan oleh lpdata—baik melalui anggota uID atau guidItem-nya . Pengidentifikasi ini digunakan dalam panggilan berikutnya ke Shell_NotifyIcon untuk melakukan tindakan selanjutnya pada ikon.
NIM_MODIFY (0x00000001)
0x00000001. Memodifikasi ikon di area status. Struktur NOTIFYICONDATA yang diacu oleh lpdata menggunakan ID yang awalnya ditetapkan ke ikon ketika ditambahkan ke area pemberitahuan (NIM_ADD) untuk mengidentifikasi ikon yang akan dimodifikasi.
NIM_DELETE (0x00000002)
0x00000002. Menghapus ikon dari area status. Struktur NOTIFYICONDATA yang ditunjukkan oleh lpdata menggunakan ID yang awalnya ditetapkan ke ikon ketika ditambahkan ke area pemberitahuan (NIM_ADD) untuk mengidentifikasi ikon yang akan dihapus.
NIM_SETFOCUS (0x00000003)
0x00000003. Shell32.dll versi 5.0 dan yang lebih baru saja. Mengembalikan fokus ke area pemberitahuan taskbar. Ikon area pemberitahuan harus menggunakan pesan ini ketika mereka telah menyelesaikan operasi UI mereka. Misalnya, jika ikon menampilkan menu pintasan, tetapi pengguna menekan ESC untuk membatalkannya, gunakan NIM_SETFOCUS untuk mengembalikan fokus ke area pemberitahuan.
NIM_SETVERSION (0x00000004)
0x00000004. Shell32.dll versi 5.0 dan yang lebih baru saja. Menginstruksikan area pemberitahuan untuk berperilaku sesuai dengan nomor versi yang ditentukan dalam anggota uVersion struktur yang ditujukkan oleh lpdata. Nomor versi menentukan anggota mana yang dikenali.
NIM_SETVERSION harus dipanggil setiap kali ikon area pemberitahuan ditambahkan (NIM_ADD). Ini tidak perlu dipanggil dengan NIM_MODIFY. Pengaturan versi tidak bertahan setelah pengguna keluar.
Untuk detailnya, lihat bagian Keterangan.
[in] lpData
Jenis: PNOTIFYICONDATA
Penunjuk ke struktur NOTIFYICONDATA . Konten struktur tergantung pada nilai dwMessage. Ini dapat menentukan ikon untuk ditambahkan ke area pemberitahuan, menyebabkan ikon tersebut menampilkan pemberitahuan, atau mengidentifikasi ikon untuk memodifikasi atau menghapus.
Nilai kembali
Jenis: BOOL
Mengembalikan TRUE jika berhasil, atau FALSE sebaliknya. Jika dwMessage diatur ke NIM_SETVERSION, fungsi mengembalikan TRUE jika versi berhasil diubah, atau FALSE jika versi yang diminta tidak didukung.
Keterangan
Pada Windows 2000 (Shell32.dll versi 5.0), jika Anda mengatur anggota uVersion dari struktur NOTIFYICONDATA yang diarahkan oleh lpdata ke NOTIFYICON_VERSION_4 atau lebih tinggi, Shell_NotifyIcon peristiwa mouse dan keyboard ditangani secara berbeda dari di versi Windows sebelumnya. Perbedaannya meliputi hal-hal berikut:
- Jika pengguna memilih menu pintasan ikon pemberitahuan dengan keyboard, Shell sekarang mengirim pesan WM_CONTEXTMENU kepada aplikasi terkait. Versi sebelumnya mengirim pesan WM_RBUTTONDOWN dan WM_RBUTTONUP .
- Jika pengguna memilih ikon pemberitahuan dengan keyboard dan mengaktifkannya dengan tombol SPACEBAR atau ENTER, Shell versi 5.0 mengirimkan aplikasi terkait pemberitahuan NIN_KEYSELECT. Versi sebelumnya mengirim pesan WM_RBUTTONDOWN dan WM_RBUTTONUP .
- Jika pengguna memilih ikon pemberitahuan dengan mouse dan mengaktifkannya dengan tombol ENTER, Shell sekarang mengirim aplikasi terkait pemberitahuan NIN_SELECT. Versi sebelumnya mengirim pesan WM_RBUTTONDOWN dan WM_RBUTTONUP .
- NIN_BALLOONSHOW. Dikirim ketika balon ditampilkan (balon diantrekan).
-
NIN_BALLOONHIDE. Dikirim ketika balon menghilang. Misalnya, saat ikon dihapus. Pesan ini tidak dikirim jika balon ditutup karena waktu habis atau jika pengguna mengklik mouse.
Pada Windows 7, NIN_BALLOONHIDE juga dikirim ketika pemberitahuan dengan set bendera NIIF_RESPECT_QUIET_TIME mencoba ditampilkan selama waktu tenang (jam pertama pengguna di komputer baru). Dalam hal ini, balon tidak pernah ditampilkan sama sekali.
- NIN_BALLOONTIMEOUT. Dikirim ketika balon diberhentikan karena waktu habis.
- NIN_BALLOONUSERCLICK. Dikirim ketika balon dimatikan karena pengguna mengklik mouse.
- NIN_POPUPOPEN. Dikirim saat pengguna mengarahkan kursor ke ikon untuk menunjukkan bahwa UI pop-up yang lebih kaya harus digunakan sebagai pengganti tipsalat tekstual standar.
- NIN_POPUPCLOSE. Dikirim saat kursor tidak lagi mengarahkan kursor ke ikon untuk menunjukkan bahwa UI pop-up kaya harus ditutup.
Catatan
Header shellapi.h mendefinisikan Shell_NotifyIcon sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor 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
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | shellapi.h |
Pustaka | Shell32.lib |
DLL | Shell32.dll (versi 4.0 atau yang lebih baru) |
Set API | ext-ms-win-shell-shell32-l1-2-1 (diperkenalkan dalam Windows 10, versi 10.0.10240) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk