Kelas CMouseManager
Memungkinkan pengguna untuk mengaitkan perintah yang berbeda dengan objek CView tertentu saat pengguna mengklik dua kali di dalam tampilan tersebut.
Sintaks
class CMouseManager : public CObject
Anggota
Metode Publik
Nama | Deskripsi |
---|---|
CMouseManager::AddView | CView Menambahkan objek ke kotak dialog Kustomisasi. Kotak dialog Kustomisasi memungkinkan pengguna untuk mengaitkan klik ganda dengan perintah untuk setiap tampilan yang tercantum. |
CMouseManager::GetViewDblClickCommand | Mengembalikan perintah yang dijalankan saat pengguna mengklik dua kali di dalam tampilan yang disediakan. |
CMouseManager::GetViewiconId | Mengembalikan ikon yang terkait dengan ID tampilan yang disediakan. |
CMouseManager::GetViewIdByName | Mengembalikan ID tampilan yang terkait dengan nama tampilan yang disediakan. |
CMouseManager::GetViewNames | Mengambil daftar semua nama tampilan yang ditambahkan. |
CMouseManager::LoadState | Memuat status CMouseManager dari registri Windows. |
CMouseManager::SaveState | Menulis status CMouseManager ke registri Windows. |
CMouseManager::SetCommandForDblClk | Mengaitkan perintah yang disediakan dan tampilan yang disediakan. |
Keterangan
Kelas CMouseManager
mempertahankan kumpulan CView
objek. Setiap tampilan diidentifikasi dengan nama dan dengan ID. Tampilan ini diperlihatkan dalam kotak dialog Kustomisasi . Pengguna dapat mengubah perintah yang terkait dengan tampilan apa pun melalui kotak dialog Kustomisasi . Perintah terkait dijalankan saat pengguna mengklik dua kali dalam tampilan tersebut. Untuk mendukung ini dari perspektif pengkodean, Anda harus memproses pesan WM_LBUTTONDBLCLK dan memanggil fungsi CWinAppEx::OnViewDoubleClick dalam kode untuk CView
objek tersebut..
Anda tidak boleh membuat CMouseManager
objek secara manual. Ini akan dibuat oleh kerangka kerja aplikasi Anda. Ini juga akan dihancurkan secara otomatis ketika pengguna keluar dari aplikasi. Untuk mendapatkan penunjuk ke manajer mouse untuk aplikasi Anda, panggil CWinAppEx::GetMouseManager.
Hierarki Warisan
CMouseManager
Persyaratan
Header: afxmousemanager.h
CMouseManager::AddView
Mendaftarkan objek CView dengan Kelas CMouseManager untuk mendukung perilaku mouse kustom.
BOOL AddView(
int iViewId,
UINT uiViewNameResId,
UINT uiIconId = 0);
BOOL AddView(
int iId,
LPCTSTR lpszViewName,
UINT uiIconId = 0);
Parameter
iViewId
[di] ID tampilan.
uiViewNameResId
[di] ID string sumber daya yang mereferensikan nama tampilan.
uiIconId
[di] ID ikon tampilan.
iId
[di] ID tampilan.
lpszViewName
[di] Nama tampilan.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Untuk mendukung perilaku mouse kustom, tampilan harus didaftarkan dengan CMouseManager
objek . Objek apa pun yang berasal dari CView
kelas dapat didaftarkan ke manajer mouse. String dan ikon yang terkait dengan tampilan ditampilkan di tab Mouse dari kotak dialog Kustomisasi.
Programmer bertanggung jawab untuk membuat dan memelihara ID tampilan seperti iViewId dan iId.
Untuk informasi selengkapnya tentang cara memberikan perilaku mouse kustom, lihat Kustomisasi Keyboard dan Mouse.
Contoh
Contoh berikut menunjukkan cara mengambil pointer ke CMouseManager
objek dengan menggunakan CWinAppEx::GetMouseManager
metode dan AddView
metode di CMouseManager
kelas . Cuplikan kode ini adalah bagian dari sampel Kumpulan Status.
GetMouseManager()->AddView(IDR_MAINFRAME, _T("My view"), IDR_MAINFRAME);
CMouseManager::GetViewDblClickCommand
Mengembalikan perintah yang dijalankan saat pengguna mengklik dua kali di dalam tampilan yang disediakan.
UINT GetViewDblClickCommand(int iId) const;
Parameter
iId
[di] ID tampilan.
Tampilkan Nilai
Pengidentifikasi perintah jika tampilan dikaitkan dengan perintah; jika tidak, 0.
CMouseManager::GetViewiconId
Mengambil ikon yang terkait dengan ID tampilan.
UINT GetViewIconId(int iViewId) const;
Parameter
iViewId
[di] ID tampilan.
Tampilkan Nilai
Pengidentifikasi sumber daya ikon jika berhasil; jika tidak, 0.
Keterangan
Metode ini akan gagal jika tampilan tidak terlebih dahulu didaftarkan dengan menggunakan CMouseManager::AddView.
CMouseManager::GetViewIdByName
Mengambil ID tampilan yang terkait dengan nama tampilan.
int GetViewIdByName(LPCTSTR lpszName) const;
Parameter
lpszName
[di] Nama tampilan.
Tampilkan Nilai
ID tampilan jika berhasil; jika tidak, 0.
Keterangan
Metode ini mencari melalui tampilan yang terdaftar dengan menggunakan CMouseManager::AddView.
CMouseManager::GetViewNames
Mengambil daftar semua nama tampilan terdaftar.
void GetViewNames(CStringList& listOfNames) const;
Parameter
listOfNames
[out] Referensi ke CStringList
objek.
Keterangan
Metode ini mengisi parameter listOfNames
dengan nama semua tampilan yang terdaftar dengan menggunakan CMouseManager::AddView.
CMouseManager::LoadState
Memuat status Kelas CMouseManager dari registri.
BOOL LoadState(LPCTSTR lpszProfileName = NULL);
Parameter
lpszProfileName
[di] Jalur kunci registri.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Informasi status yang dimuat dari registri mencakup tampilan terdaftar, pengidentifikasi tampilan, dan perintah terkait. Jika parameter lpszProfileName adalah NULL, fungsi ini memuat data dari lokasi registri CMouseManager
default yang dikontrol oleh Kelas CWinAppEx.
Dalam kebanyakan kasus, Anda tidak perlu memanggil fungsi ini secara langsung. Ini disebut sebagai bagian dari proses inisialisasi ruang kerja. Untuk informasi selengkapnya tentang proses inisialisasi ruang kerja, lihat CWinAppEx::LoadState.
CMouseManager::SaveState
Menulis status Kelas CMouseManager ke registri.
BOOL SaveState(LPCTSTR lpszProfileName = NULL);
Parameter
lpszProfileName
[di] Jalur kunci registri.
Tampilkan Nilai
Bukan nol jika berhasil; jika tidak, 0.
Keterangan
Informasi status yang ditulis ke registri mencakup semua tampilan terdaftar, pengidentifikasi tampilan, dan perintah terkait. Jika parameter lpszProfileName adalah NULL, fungsi ini menulis data ke lokasi registri CMouseManager
default yang dikontrol oleh Kelas CWinAppEx.
Dalam kebanyakan kasus, Anda tidak perlu memanggil fungsi ini secara langsung. Ini disebut sebagai bagian dari proses serialisasi ruang kerja. Untuk informasi selengkapnya tentang proses serialisasi ruang kerja, lihat CWinAppEx::SaveState.
CMouseManager::SetCommandForDblClk
Mengaitkan perintah kustom dengan tampilan yang pertama kali didaftarkan dengan manajer mouse.
void SetCommandForDblClk(
int iViewId,
UINT uiCmd);
Parameter
iViewId
[di] Pengidentifikasi tampilan.
uiCmd
[di] Pengidentifikasi perintah.
Keterangan
Untuk mengaitkan perintah kustom dengan tampilan, Anda harus terlebih dahulu mendaftarkan tampilan dengan menggunakan CMouseManager::AddView. Metode ini AddView
memerlukan pengidentifikasi tampilan sebagai parameter input. Setelah mendaftarkan tampilan, Anda dapat memanggil CMouseManager::SetCommandForDblClk
dengan parameter input pengidentifikasi tampilan yang sama dengan yang Anda berikan ke AddView
. Setelah itu, ketika pengguna mengklik dua kali mouse dalam tampilan terdaftar, aplikasi akan menjalankan perintah yang ditunjukkan oleh uiCmd. Untuk mendukung perilaku mouse kustom, Anda juga perlu menyesuaikan tampilan yang terdaftar di manajer mouse. Untuk informasi selengkapnya tentang perilaku mouse kustom, lihat Kustomisasi Keyboard dan Mouse.
Jika uiCmd diatur ke 0, tampilan yang ditentukan tidak lagi terkait dengan perintah.
Lihat juga
Bagan Hierarki
Kelas
Kelas CWinAppEx
Kustomisasi Keyboard dan Mouse