Aracılığıyla paylaş


WM_MOUSEWHEEL iletisi

Fare tekerleği döndürüldüğünde odak penceresine gönderilir. DefWindowProc işlevi iletiyi pencerenin üst öğesine yayılır. DefWindowProc bunu işleyen bir pencere bulana kadar üst zincire yaydığından, iletinin iç iletmesi olmamalıdır.

Bir pencere bu iletiyi WindowProc işlevi aracılığıyla alır.

#define WM_MOUSEWHEEL                   0x020A

Parametre

wParam

Yüksek sıralı sözcük, tekerleğin döndürülmesi mesafesini gösterir, WHEEL_DELTAkatları veya bölmeleriyle ifade edilir ve 120'dir. Pozitif bir değer, tekerleğin kullanıcıdan uzakta ileri doğru döndürüldüğünü gösterir; negatif bir değer, tekerleğin geriye, kullanıcıya doğru döndürüldüğünü gösterir.

Düşük sıralı sözcük, çeşitli sanal anahtarların devre dışı olup olmadığını gösterir. Bu parametre aşağıdaki değerlerden biri veya daha fazlası olabilir.

Değer Anlam
MK_CONTROL
0x0008
CTRL tuşu çalışmıyor.
MK_LBUTTON
0x0001
Sol fare düğmesi çalışmıyor.
MK_MBUTTON
0x0010
Ortadaki fare düğmesi çalışmıyor.
MK_RBUTTON
0x0002
Sağ fare düğmesi çalışmıyor.
MK_SHIFT
0x0004
SHIFT tuşu çalışmıyor.
MK_XBUTTON1
0x0020
XBUTTON1 çalışmıyor.
MK_XBUTTON2
0x0040
XBUTTON2 çalışmıyor.

lParam

Düşük sıralı sözcük, işaretçinin x koordinatını ekranın sol üst köşesine göre belirtir.

Yüksek sıralı sözcük, işaretçinin y koordinatını ekranın sol üst köşesine göre belirtir.

Dönüş değeri

Bir uygulama bu iletiyi işlerse sıfır döndürmelidir.

Açıklamalar

wParam parametresindeki bilgileri almak için aşağıdaki kodu kullanın:

fwKeys = GET_KEYSTATE_WPARAM(wParam);
zDelta = GET_WHEEL_DELTA_WPARAM(wParam);

Yatay ve dikey konumu elde etmek için aşağıdaki kodu kullanın:

xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

Yukarıda belirtildiği gibi, x koordinatı dönüş değerinin düşük sırada kısa; y koordinatı yüksek sıralı kısa (her ikisi de birden çok monitöre sahip sistemlerde negatif değerler alabildiği için imzalı değerleri temsil eder). Dönüş değeri bir değişkene atanmışsa, dönüş değerinden POINTS yapısı elde etmek için MAKEPOINTS makrosunu kullanabilirsiniz. x veya y koordinatını ayıklamak için GET_X_LPARAM veya GET_Y_LPARAM makroyu da kullanabilirsiniz.

Önemli

İmleç konumunun x ve y koordinatlarını ayıklamak için LOWORD veya HIWORD makroları kullanmayın çünkü bu makrolar birden çok monitöre sahip sistemlerde yanlış sonuçlar döndürür. Birden çok monitöre sahip sistemler negatif x ve y koordinatlarına sahip olabilir ve lowORD ve HIWORD koordinatları işaretsiz miktarlar olarak kabul eder.

Tekerlek rotasyonu, 120 olarak ayarlanan WHEEL_DELTAkatı olacaktır. Bu, gerçekleştirilecek eylemin eşiğidir ve her delta için bu tür bir eylem (örneğin, bir artım kaydırma) gerçekleşmelidir.

Delta, Microsoft'un veya diğer satıcıların döndürme başına daha fazla ileti göndermek için daha ince çözünürlüklü tekerlekler (çentiksiz serbest dönen bir tekerlek) oluşturmasına izin vermek için 120 olarak ayarlandı, ancak her iletide daha küçük bir değerle. Bu özelliği kullanmak için, WHEEL_DELTA ulaşılana kadar gelen delta değerlerini ekleyebilir (delta döndürme için aynı yanıtı alırsınız) veya daha sık iletiye yanıt olarak kısmi satırları kaydırabilirsiniz. Ayrıca, kaydırma ayrıntı düzeyinizi seçebilir ve ulaşılana kadar deltaları biriktirebilirsiniz.

MSH_MOUSEWHEELiçin fwKey olmadığını unutmayın. Aksi takdirde, parametreler WM_MOUSEWHEELile tam olarak aynıdır.

MSH_MOUSEWHEEL eklenmiş nesnelere veya denetimlere iletmek uygulamaya bağlı. Uygulamanın iletiyi etkin bir katıştırılmış OLE uygulamasına göndermesi gerekir. Uygulamanın isteğe bağlı olarak, odakla tekerlek özellikli bir denetime göndermesi gerekir. Uygulama iletiyi bir denetime gönderirse, iletinin işlenip işlenmediğini görmek için dönüş değerini denetleyebilir. denetimler, iletiyi işlerse TRUE değerini döndürmek için gereklidir.

Gereksinim -leri

Gereksinim Değer
Desteklenen en düşük istemci
Windows 2000 Professional [yalnızca masaüstü uygulamaları]
Desteklenen en düşük sunucu
Windows 2000 Server [yalnızca masaüstü uygulamaları]
Üstbilgi
Winuser.h (Windowsx.h dahil)

Ayrıca bkz.

Başvuru

GET_KEYSTATE_WPARAM

GET_X_LPARAM

GET_Y_LPARAM

GET_WHEEL_DELTA_WPARAM

HIWORD

LOWORD

mouse_event

kavramsal

fare girişi

Diğer Kaynaklar

GetSystemMetrics

MAKEPOINTS

PUAN

SystemParametersInfo