CMouseManager Sınıfı
Kullanıcı bu görünümün içine çift tıkladığında kullanıcının belirli bir CView nesnesiyle farklı komutları ilişkilendirmesine izin verir.
Sözdizimi
class CMouseManager : public CObject
Üyeler
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CMouseManager::AddView | ÖzelleştirmeCView bir nesne ekler. Özelleştirme iletişim kutusu, kullanıcının listelenen görünümlerin her biri için bir komutla çift tıklama ilişkilendirmesini sağlar. |
CMouseManager::GetViewDblClickCommand | Kullanıcı sağlanan görünümün içine çift tıkladığında yürütülen komutu döndürür. |
CMouseManager::GetViewIconId | Sağlanan görünüm kimliğiyle ilişkili simgeyi döndürür. |
CMouseManager::GetViewIdByName | Sağlanan görünüm adıyla ilişkili görünüm kimliğini döndürür. |
CMouseManager::GetViewNames | Eklenen tüm görünüm adlarının listesini alır. |
CMouseManager::LoadState |
CMouseManager Durumu Windows kayıt defterinden yükler. |
CMouseManager::SaveState |
CMouseManager Durumu Windows kayıt defterine yazar. |
CMouseManager::SetCommandForDblClk | Sağlanan komutu ve sağlanan görünümü ilişkilendirir. |
Açıklamalar
CMouseManager
sınıfı bir nesne koleksiyonu CView
tutar. Her görünüm bir ada ve bir kimliğe göre tanımlanır. Bu görünümler Özelleştirme iletişim kutusunda gösterilir. Kullanıcı, Özelleştirme iletişim kutusu aracılığıyla herhangi bir görünümle ilişkili komutu değiştirebilir. İlişkili komut, kullanıcı bu görünüme çift tıkladığında yürütülür. Bunu kodlama açısından desteklemek için, WM_LBUTTONDBLCLK iletisini işlemeniz ve bu CView
nesnesinin kodunda CWinAppEx::OnViewDoubleClick işlevini çağırmanız gerekir.
Nesneyi el ile oluşturmamalısınız CMouseManager
. Uygulamanızın çerçevesi tarafından oluşturulur. Kullanıcı uygulamadan çıktığında da otomatik olarak yok edilir. Uygulamanızın fare yöneticisine yönelik bir işaretçi almak için CWinAppEx::GetMouseManager'ı çağırın.
Devralma Hiyerarşisi
CMouseManager
Gereksinimler
Üst bilgi: afxmousemanager.h
CMouseManager::AddView
Özel fare davranışını desteklemek için CMouseManager Sınıfınabir CView nesnesi kaydeder.
BOOL AddView(
int iViewId,
UINT uiViewNameResId,
UINT uiIconId = 0);
BOOL AddView(
int iId,
LPCTSTR lpszViewName,
UINT uiIconId = 0);
Parametreler
iViewId
[in] Görünüm kimliği.
uiViewNameResId
[in] Görünüm adına başvuran bir kaynak dizesi kimliği.
uiIconId
[in] Görünüm simgesi kimliği.
iId
[in] Görünüm kimliği.
lpszViewName
[in] Görünüm adı.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Özel fare davranışını desteklemek için bir görünümün nesnesine CMouseManager
kaydedilmesi gerekir. sınıfından CView
türetilen herhangi bir nesne fare yöneticisine kaydedilebilir. Görünümle ilişkilendirilmiş dize ve simge, Özelleştir iletişim kutusunun Fare sekmesinde görüntülenir.
iViewId ve iId gibi görünüm kimliklerini oluşturmak ve korumak programcının sorumluluğundadır.
Özel fare davranışı sağlama hakkında daha fazla bilgi için bkz . Klavye ve Fare Özelleştirmesi.
Örnek
Aşağıdaki örnekte, sınıfındaki yöntemini ve yöntemini kullanarak CMouseManager
bir nesneye yönelik bir CWinAppEx::GetMouseManager
işaretçinin AddView
nasıl alındığı gösterilmektedirCMouseManager
. Bu kod parçacığı Durum Koleksiyonu örneğinin bir parçasıdır.
GetMouseManager()->AddView(IDR_MAINFRAME, _T("My view"), IDR_MAINFRAME);
CMouseManager::GetViewDblClickCommand
Kullanıcı sağlanan görünümün içine çift tıkladığında yürütülen komutu döndürür.
UINT GetViewDblClickCommand(int iId) const;
Parametreler
iId
[in] Görünüm kimliği.
Dönüş Değeri
Görünüm bir komutla ilişkilendirilmişse komut tanımlayıcısı; aksi takdirde 0.
CMouseManager::GetViewIconId
Görünüm kimliğiyle ilişkili simgeyi alır.
UINT GetViewIconId(int iViewId) const;
Parametreler
iViewId
[in] Görünüm kimliği.
Dönüş Değeri
Başarılı olursa bir simge kaynak tanımlayıcısı; aksi takdirde 0.
Açıklamalar
Görünüm ilk olarak CMouseManager::AddView kullanılarak kaydedilmediyse bu yöntem başarısız olur.
CMouseManager::GetViewIdByName
Görünüm adıyla ilişkilendirilmiş görünüm kimliğini alır.
int GetViewIdByName(LPCTSTR lpszName) const;
Parametreler
lpszName
[in] Görünüm adı.
Dönüş Değeri
Başarılı olursa bir görünüm kimliği; aksi takdirde 0.
Açıklamalar
Bu yöntem, CMouseManager::AddView kullanılarak kaydedilen görünümlerde arama uygular.
CMouseManager::GetViewNames
Tüm kayıtlı görünüm adlarının listesini alır.
void GetViewNames(CStringList& listOfNames) const;
Parametreler
listOfNames
[out] Nesne başvurusu CStringList
.
Açıklamalar
Bu yöntem, parametresini listOfNames
CMouseManager::AddView kullanarak kaydedilen tüm görünümlerin adlarıyla doldurur.
CMouseManager::LoadState
Kayıt defterinden CMouseManager Sınıfının durumunu yükler.
BOOL LoadState(LPCTSTR lpszProfileName = NULL);
Parametreler
lpszProfileName
[in] Kayıt defteri anahtarının yolu.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Kayıt defterinden yüklenen durum bilgileri kayıtlı görünümleri, görünüm tanımlayıcılarını ve ilişkili komutları içerir. lpszProfileName parametresi NULL ise, bu işlev CWinAppEx Sınıfı tarafından denetlenen varsayılan kayıt defteri konumundan verileri yüklerCMouseManager
.
Çoğu durumda, bu işlevi doğrudan çağırmanız gerekmez. Çalışma alanı başlatma işleminin bir parçası olarak çağrılır. Çalışma alanı başlatma işlemi hakkında daha fazla bilgi için bkz . CWinAppEx::LoadState.
CMouseManager::SaveState
CMouseManager Sınıfının durumunu kayıt defterine yazar.
BOOL SaveState(LPCTSTR lpszProfileName = NULL);
Parametreler
lpszProfileName
[in] Kayıt defteri anahtarının yolu.
Dönüş Değeri
Başarılı olursa sıfır olmayan; aksi takdirde 0.
Açıklamalar
Kayıt defterine yazılan durum bilgileri tüm kayıtlı görünümleri, görünüm tanımlayıcılarını ve ilişkili komutları içerir. lpszProfileName parametresi NULL ise, bu işlev verileri CWinAppEx SınıfıCMouseManager
yazar.
Çoğu durumda, bu işlevi doğrudan çağırmanız gerekmez. Çalışma alanı serileştirme işleminin bir parçası olarak çağrılır. Çalışma alanı serileştirme işlemi hakkında daha fazla bilgi için bkz . CWinAppEx::SaveState.
CMouseManager::SetCommandForDblClk
Özel bir komutu, ilk olarak fare yöneticisine kaydedilmiş bir görünümle ilişkilendirir.
void SetCommandForDblClk(
int iViewId,
UINT uiCmd);
Parametreler
iViewId
[in] Görünüm tanımlayıcısı.
uiCmd
[in] Komut tanımlayıcısı.
Açıklamalar
Özel bir komutu bir görünümle ilişkilendirmek için önce CMouseManager::AddView kullanarak görünümü kaydetmeniz gerekir. yöntemi giriş AddView
parametresi olarak bir görünüm tanımlayıcısı gerektirir. Bir görünümü kaydettikten sonra, öğesine sağladığınız CMouseManager::SetCommandForDblClk
aynı görünüm tanımlayıcısı giriş parametresiyle çağrı AddView
yapabilirsiniz. Bundan sonra, kullanıcı kayıtlı görünümde fareye çift tıkladığında, uygulama uiCmd tarafından belirtilen komutu yürütür. Özel fare davranışını desteklemek için fare yöneticisine kayıtlı görünümü de özelleştirmeniz gerekir. Özel fare davranışı hakkında daha fazla bilgi için bkz . Klavye ve Fare Özelleştirmesi.
uiCmd 0 olarak ayarlanırsa, belirtilen görünüm artık bir komutla ilişkilendirilmez.
Ayrıca bkz.
Hiyerarşi Grafiği
Sınıflar
CWinAppEx Sınıfı
Klavye ve Fare Özelleştirmesi