Aracılığıyla paylaş


WM_XBUTTONDOWN iletisi

İmleç bir pencerenin istemci alanındayken kullanıcı XBUTTON1 veya XBUTTON2 bastığında postalanır. Fare yakalanmazsa, ileti imlecin altındaki pencereye postalanır. Aksi takdirde, ileti fareyi yakalayan pencereye postalanır.

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

#define WM_XBUTTONDOWN                  0x020B

Parametre

wParam

Düşük sıralı sözcük, çeşitli sanal anahtarların devre dışı olup olmadığını gösterir. 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.

Yüksek sıralı sözcük, hangi düğmeye tıklandığını gösterir. Aşağıdaki değerlerden biri olabilir.

Değer Anlam
XBUTTON1
0x0001
XBUTTON1 tıklandı.
XBUTTON2
0x0002
XBUTTON2 tıklandı.

lParam

Düşük sıralı sözcük, imlecin x koordinatını belirtir. Koordinat, istemci alanının sol üst köşesine göredir.

Yüksek sıralı sözcük, imlecin y koordinatını belirtir. Koordinat, istemci alanının sol üst köşesine göredir.

Dönüş değeri

Bir uygulama bu iletiyi işlerse truedöndürmelidir. Dönüş değerini işleme hakkında daha fazla bilgi için Açıklamalar bölümüne bakın.

Açıklamalar

Windows beş düğmeye kadar fareleri destekler: sol, orta ve sağ, ayrıca XBUTTON1 ve XBUTTON2 adlı iki ek düğme. XBUTTON1 ve XBUTTON2 düğmeleri genellikle farenin kenarlarında, tabanın yakınında bulunur. Bu ek düğmeler tüm farelerde mevcut değildir. Varsa, XBUTTON1 ve XBUTTON2 düğmeleri genellikle web tarayıcısında ileri ve geri gezinti gibi bir uygulama işlevine eşlenir.

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

fwKeys = GET_KEYSTATE_WPARAM (wParam); 
fwButton = GET_XBUTTON_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.

WM_LBUTTONDOWN, WM_MBUTTONDOWNve WM_RBUTTONDOWN iletilerinden farklı olarak, bir uygulama bu iletiyi işlerse bu iletiden DOĞRU döndürmelidir. Bunun yapılması, Windows 2000'den önceki Windows sistemlerinde bu iletinin benzetimini yapan yazılımların, pencere yordamının iletiyi işleyip işlemediğini veya DefWindowProc olarak adlandırıldığını belirlemesine olanak tanır.

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_XBUTTON_WPARAM

GET_Y_LPARAM

GetCapture

SetCapture

WM_XBUTTONDBLCLK

WM_XBUTTONUP

kavramsal

fare girişi

Diğer Kaynaklar

MAKEPOINTS

PUAN