MouseWheel

Katılım
31 Mayıs 2006
Mesajlar
25
mousewheel özelliğini nasıl disabled yapabilirim.Yani sayfa geçişlerinde mouse un ortasındaki scroll düğmesinin etkinliğini kaldırmak istiyorum. Pagedown ve Pageup tuşlarını aşağıdaki gibi etkinliğini kaldırılabiliyor

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

Select Case KeyCode
Case vbKeyPageDown, vbKeyPageUp
KeyCode = 0
Case Else

End Select

End Sub

Ancak mouse harektelerini kısıtlayamadım. aşağıdakini denedim ama olmuyor.

Private Sub Form_MouseWheel(ByVal Page As Boolean, ByVal Count As Long)
Page = False işe yaramıyor.(Bilmiyorum yanlış şeymi)
End Sub

Yardımlarınızı bekliyorum. Şimdiden tşk
 
Katılım
7 Şubat 2006
Mesajlar
5
Aynı sorunu şu şekilde hallettim

Formun sol üst köşesinde özelliklerini açıp, "Biçim" Sekmesinde, normalde "Tek Form" olan "Varsayılan Görünüm" kısmını "Sürekli Form" olarak değiştirdim.

Mouse topunu çevirdikçe diğer kayıtlara atlamıyor.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın enasmu,

Aşağıdaki kodu deneyin.

Kod:
Private Sub Form_Load()
' Turn the MouseWheel Off
Dim blRet As Boolean
' Call our MouseHook function in the MouseHook dll.
' Please note the Optional GlobalHook BOOLEAN parameter
' Several developers asked for the MouseHook to be able to work with
' multiple instances of Access. In order to accomodate this request I
' have modified the function to allow the caller to
' specify a thread specific(this current instance of Access only) or
' a global(all applications) MouseWheel Hook.
' Only use the GlobalHook if you will be running multiple instances of Access!
    blRet = MouseWheelOFF(False)
End Sub

İyi çalışmalar :D
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Sayın modalı,

İlgili DLL'i de yüklemek gerekir herhalde ...
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın Haluk,

Aldığım yerde şöyle diyordu:

The MouseHook DLL is a standard Windows DLL. Do not try to Register it or set a Reference to it from within Access.
Yine de dll le birlikte örnek de ekliyorum

İyi çalışmalar
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Sayın modalı,

Alıntı yaptığınız yerin devamında şu şekilde bir ifade daha var;

http://www.lebans.com/mousewheelonoff.htm' Alıntı:
.......The MouseHook DLL is a standard Windows DLL. Do not try to Register it or set a Reference to it from within Access. Just copy the included MouseHook.DLL into your Windows/System folder or into the same folder as your application MDB.....
Yani; DLL'i Windows'a register etmenize gerek yok, sadece sistem klasörüne veya uygulamanın olduğu klasöre yerleştirin, yeterlidir ... diyor.

Emin olmak için, ben WinXP-HomeEd içinde şimdi aradım, bulamadım.

Yanlış anlamanızı istemem, öneriniz güzel. Sadece, gördüğüm bir eksklik hakkında ilave bilgi vermek istemiştim.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Yanlış anlamıyorum ama örneği ekledim incelerseniz memnun olurum
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Sayın modalı,

Örneği indirip, incelemedim. Çünkü, mesajınızdaki kod gayet açık.

İlgili web sayfasındaki açıklama da zaten yeterli. Yani, o DLL bilgisayarda olmadan sözkonusu çalışmaz.

Eğer, DLL'i de bilgisayara yüklerseniz o zaman çalışır.

Bunu görmek için, denemeye pek gerek görmedim. Zaten, *.rar uzantıları açacak programım yok.

İyi akşamlar.
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Gönderdiğim örnekte dll de ekli

iyi akşamlar :D
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Sanırım, sizinle bir konuda anlaşamıyoruz.

Ben, sizin alıntı yaptığınız kod hatalıdır veya doğrudur demiyorum.

Diyorum ki; verdiğiniz kodun çalışması için, ilgili DLL bilgisayarda sistem klasöründe veya uygulamanın kök yolunda olmalıdır, yoksa kod o zaman çalışmaz diyorum. Zaten, benden önce bu kodu hazırlayan kişi bu şekilde durumu kendi web sayfasında belirtmiş.

Siz, kodu ilk olarak önerdiğiniz sırada kodda kullanılan bir fonksiyon olduğunu ve bu fonksiyonun da çalışması için, fonksiyonun müracaat ettiği DLL' i de mesajınız ekinde vermeniz gerektiği hakkında uyarıda bulundum.

Olay, bundan ibarettir.

İyi akşamlar.
 
Katılım
31 Mayıs 2006
Mesajlar
25
Arkadaşlar bu tarz fikirsel tartışmalar galiba benim gibiler için çok faydalı oluyor. yukarıda bilgiler ışığında kendi dosyama uyguladığımda DLL dosyası mutlaka bilgisayarda kayıtlı olması gerektiğini öğrendim. diğer türlü çalışmıyor. emeği geçenlere tşk
 
Üst