Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Fare girişinin alınması ve işlenmesi her Windows uygulamasının önemli bir parçasıdır. Uygulamanızda bir eylem gerçekleştirmek için fare olaylarını işleyebilir veya isabet testi veya diğer eylemleri gerçekleştirmek için fare konumu bilgilerini kullanabilirsiniz. Ayrıca, uygulamanızdaki denetimlerin fare girişini işleme biçimini değiştirebilirsiniz. Bu makalede bu fare olayları ayrıntılı olarak açıklanır ve fare için sistem ayarlarının nasıl alınıp değiştireceği açıklanır.
Windows Forms'da,
Mouse Olayları
Tüm Windows Forms denetimleri, fare ve klavye girişiyle ilgili bir dizi olayı devralır. Örneğin, bir denetim fare tıklamasının konumunu belirlemek için MouseClick olayını işleyebilir. Fare olayları hakkında daha fazla bilgi için bkz. Fare olaylarını kullanma.
Fare konumu ve isabet testi
Kullanıcı fareyi hareket ettiğinde, işletim sistemi fare işaretçisini hareket eder. Fare işaretçisi, işletim sisteminin izlediği ve işaretçinin konumu olarak tanıdığı etkin nokta olarak adlandırılan tek bir piksel içerir. Kullanıcı fareyi hareket ettiğinde veya fare düğmesine bastığında, Control içeren HotSpot uygun fare olayını tetikler.
Bir fare olayını işlerken Location'in MouseEventArgs özelliğiyle veya Position sınıfının Cursor özelliğini kullanarak geçerli fare konumunu elde edebilirsiniz. Daha sonra fare konumu bilgilerini kullanarak isabet testi gerçekleştirebilir ve ardından farenin konumuna göre bir eylem gerçekleştirebilirsiniz. İsabet testi özelliği, Windows Forms'ta, ListView, TreeView, MonthCalendar, ve DataGridView denetimleri gibi çeşitli denetimlerde yerleşik olarak bulunur.
İsabet testi, uygun fare olayıyla, örneğin MouseHover kullanıldığında, uygulamanızın belirli bir eylemi ne zaman gerçekleştirmesi gerektiğini belirlemek için yararlıdır.
Fare giriş ayarlarını değiştirme
Denetimden türeterek ve GetStyle ve SetStyle yöntemlerini kullanarak denetimin fare girişini işleme şeklini algılayabilir ve değiştirebilirsiniz. yöntemi, SetStyle denetimin standart tıklama, çift tıklama davranışına sahip olup olmadığını veya denetimin ControlStyles kendi fare işlemesini işleyip işlemediğini belirlemek için değerlerin bit düzeyinde bir bileşimini alır. Ayrıca SystemInformation sınıfı, farenin özelliklerini açıklayan ve farenin işletim sistemiyle nasıl etkileşim kuracağını belirten özellikler içerir. Aşağıdaki tabloda bu özellikler özetlemektedir.
Mülkiyet | Açıklama |
---|---|
DoubleClickSize | İşletim sisteminin iki tıklamayı çift tıklama olarak düşünebilmesi için kullanıcının iki kez tıklaması gereken alanın boyutlarını piksel cinsinden alır. |
DoubleClickTime | Fare eyleminin çift tıklama olarak kabul edilmesi için ilk tıklama ile ikinci tıklama arasında geçen milisaniye sayısı üst sınırını alır. |
MouseButtons | Faredeki düğme sayısını alır. |
MouseButtonsSwapped | Sol ve sağ fare düğmelerinin işlevlerinin değiştirilip değiştirilmediğini gösteren bir değer alır. |
MouseHoverSize | Fare işaretçisinin, fare üzerine gelme iletisi oluşturulmadan önce farenin üzerine gelme süresi boyunca kalması gereken dikdörtgenin boyutlarını piksel cinsinden alır. |
MouseHoverTime | Fare işaretçisinin fare vurgulama iletisi oluşturulmadan önce fare işaretçisinin vurgulama dikdörtgeninde kalması gereken süreyi milisaniye cinsinden alır. |
MousePresent | Farenin yüklü olup olmadığını gösteren bir değer alır. |
MouseSpeed | 1 ile 20 arasından geçerli fare hızını gösteren bir değer alır. |
MouseWheelPresent | Fare tekerleğine sahip bir farenin mevcut olup olmadığını gösteren bir değer alır. |
MouseWheelScrollDelta | Tek bir fare tekerleği dönüşünün artış miktarını, yani delta değerini alır. |
MouseWheelScrollLines | Fare tekerleği döndürüldüğünde kaydırılması gereken satır sayısını alır. |
Kullanıcı giriş iletilerini işleyen yöntemler
Formlar ve denetimler, IMessageFilter arabirimine ve windows iletilerini ileti kuyruğunun farklı noktalarında işleyen bir dizi geçersiz kılınabilir yönteme erişebilir. Bu yöntemlerin tümü, Windows iletilerinin alt düzey ayrıntılarını kapsülleyen bir Message parametresine sahiptir. İletiyi incelemek ve ardından iletiyi kullanmak veya ileti kuyruğundaki bir sonraki tüketiciye geçirmek için bu yöntemleri uygulayabilir veya geçersiz kılabilirsiniz. Aşağıdaki tabloda, Windows Forms'daki tüm Windows iletilerini işleyen yöntemler gösterilir.
Yöntem | Notlar |
---|---|
PreFilterMessage | Bu yöntem, uygulama düzeyinde kuyruğa alınan (gönderilen olarak da bilinir) Windows iletilerini durdurur. |
PreProcessMessage | Bu yöntem, Windows iletilerini işlenmeden önce form ve denetim düzeyinde durdurur. |
WndProc | Bu yöntem, Windows iletilerini form ve denetim düzeyinde işler. |
DefWndProc | Bu yöntem, Windows iletilerinin form ve denetim düzeyinde varsayılan işlemesini gerçekleştirir. Bu, bir pencerenin en düşük işlevselliğini sağlar. |
OnNotifyMessage | Bu yöntem, iletileri işlendikten sonra form ve denetim düzeyinde durdurur. Bu yöntemin çağrılabilmesi için EnableNotifyMessage stil biti ayarlanmalıdır. |
Ayrıca bakınız
.NET Desktop feedback