Newsgroup: it.comp.appl.access
Titolo: bloccare scroll del mouse maschera

vorrei bloccare la rotellina scroll del mouse affinché in una maschera non
mi permetta di passare da un record all'altro
come posso fare ?
grazie

 ha scritto nel messaggio
news:6fp8c.8826$jY1....@tornado.fastwebnet.it...

Se cerchi (su Google o sul Sito Comune) nei messaggi precedenti di questo NG
troverai molti thread che danno soluzione al tuo problema.
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

thank you


 ha scritto nel messaggio
news:hzJ8c.10453$jY1....@tornado.fastwebnet.it...

L'unica routine perfettamente funzionante è quella di Lebans realizzata con
una DLL esterna, il codice che trovi nei vari esempi, non funziona con
Sottomaschere
e Controlli a schede....!!!!
Ciao.
@Alex.

 ha scritto nel messaggio
news:c3vp6a$olu$1...@lacerta.tiscalinet.it...


ho trovato nel web il testo ma riferito a A2000
sapete (prima di fare paciughi) se funzionerà con A2003  ?
grazie
Disable Mouse Scroll in Sub Form
----------------------------------------------------------------------------
----
Hi All,
I'm using MS Access 2000.
I have a form that incorporates two sub forms.
All of these forms are used for data entry. And it is for that reason I need
to disable the mouse scroll in each form (so the user can not scroll into
another record and accidently write over it).
I have some code that disables the mouse scroll in the main form. But when
that same code is entered into the sub forms, I start to have problems:
1) The Drop Down boxes no longer work.
2) Niether the Horizontal or Vertical scroll bars (on the subforms) work
(the scroll bar does not move)
Here is the code that I am using:
It includes 3 modules:
Module 1 (a Standard Module named basSubClassWindow):
Option Compare Database
Option Explicit
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" _
(ByVal hwnd As Long, _
ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long
Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA"
_
(ByVal lpPrevWndFunc As Long, _
ByVal hwnd As Long, _
ByVal msg As Long, _
ByVal wParam As Long, _
ByVal lParam As Long) As Long
Public Const GWL_WNDPROC = -4
Public Const WM_MouseWheel = &H20A
Public lpPrevWndProc As Long
Public CMouse As CMouseWheel
Public Function WindowProc(ByVal hwnd As Long, _
ByVal uMsg As Long, _
ByVal wParam As Long, _
ByVal lParam As Long) As Long
'Look at the message passed to the window. If it is
'a mouse wheel message, call the FireMouseWheel procedure
'in the CMouseWheel class, which in turn raises the MouseWheel
'event. If the Cancel argument in the form event procedure is
'set to False, then we process the message normally, otherwise
'we ignore it. If the message is something other than the mouse
'wheel, then process it normally
Select Case uMsg
Case WM_MouseWheel
CMouse.FireMouseWheel
If CMouse.MouseWheelCancel = False Then
WindowProc = CallWindowProc(lpPrevWndProc, hwnd, uMsg, wParam, lParam)
End If
Case Else
WindowProc = CallWindowProc(lpPrevWndProc, hwnd, uMsg, wParam, lParam)
End Select
End Function
Module 2 (a Class Module named CMouseWheel)
Option Compare Database
Option Explicit
Private frm As Access.Form
Private intCancel As Integer
Public Event MouseWheel(Cancel As Integer)
Public Property Set Form(frmIn As Access.Form)
'Define Property procedure for the class which
'allows us to set the Form object we are
'using with it. This property is set from the
'form class module.
Set frm = frmIn
End Property
Public Property Get MouseWheelCancel() As Integer
'Define Property procedure for the class which
'allows us to retrieve whether or not the Form
'event procedure canceled the MouseWheel event.
'This property is retrieved by the WindowProc
'function in the standard basSubClassWindow
'module.
MouseWheelCancel = intCancel
End Property
Public Sub SubClassHookForm()
'Called from the form's OnOpen or OnLoad
'event. This procedure is what "hooks" or
'subclasses the form window. If you hook the
'the form window, you must unhook it when completed
'or Access will crash.
lpPrevWndProc = SetWindowLong(frm.hwnd, GWL_WNDPROC, _
AddressOf WindowProc)
Set CMouse = Me
End Sub
Public Sub SubClassUnHookForm()
'Called from the form's OnClose event.
'This procedure must be called to unhook the
'form window if the SubClassHookForm procedure
'has previously been called. Otherwise, Access will
'crash.
Call SetWindowLong(frm.hwnd, GWL_WNDPROC, lpPrevWndProc)
End Sub
Public Sub FireMouseWheel()
'Called from the WindowProc function in the
'basSubClassWindow module. Used to raise the
'MouseWheel event when the WindowProc function
'intercepts a mouse wheel message.
RaiseEvent MouseWheel(intCancel)
End Sub
And here is Module 3, a From Module:
Option Compare Database
Option Explicit
Public WithEvents clsMouseWheel As CMouseWheel
'Declare a module level variable as the custom class
'and give us access to the class's events
Public Sub Form_Load()
'Create a new instance of the class,
'and set the class's Form property to
'the current form
Set clsMouseWheel = New CMouseWheel
Set clsMouseWheel.Form = Me
'Subclass the current form by calling
'the SubClassHookForm method in the class
clsMouseWheel.SubClassHookForm
DoCmd.Maximize
End Sub
Public Sub Form_Close()
'Unhook the form by calling the
'SubClassUnhook form method in the
'class, and then destroy the object
'variable
clsMouseWheel.SubClassUnHookForm
Set clsMouseWheel.Form = Nothing
Set clsMouseWheel = Nothing
End Sub
Public Sub clsMouseWheel_MouseWheel(Cancel As Integer)
'This is the event procedure where you can
'decide what to do when the user rolls the mouse.
'If setting Cancel = True, we disable the mouse wheel
'in this form.
MsgBox "You cannot use the mouse wheel to scroll through records."
Cancel = True
End Sub

 ha scritto nel messaggio
news:s9L8c.10548$jY1....@tornado.fastwebnet.it...
ciao Lu67,
ti saremmo tutti grati se leggessi le istruzioni
per l'uso che vengono postati periodicamenti
(con tutti i problemi di ammbiente -
aggiungerei...), perchè qui cerchiamo di attenerci
con sufficiente scrupolo.
Lì troverai concetti di quoting e di rilettura di
post precedenti, che sono alla base di questa
lista.
Poi per @Alex che ti ha risposto così ti posso
dire che ho attaccato la sedia della sua scrivania
alla seriale del suo pc
è già partita in controllo remoto una scossetta
(purtroppo per lui non quella dell'Eredità di
Amadeus!) e
Antonio, l'arbitro del Ng gli sta per elevare il
cartellino giallo.
ciao
MAssimiliano


Funziona anche con A2003.
Per il QUOTING, mi č arrivata la scossa per colpa tua....!!!
@Alex.


Desolato, ma di solito non faccio prigionieri. A
chi tocca tocca.
MAssimiliano

 MAssimiliano
Quì nel mio paesello c'è un gioco di parole in dialetto che
dice vede 2 attori:
Il 1° dice: "Sota chi toca"
Il  2° Risponde "Toca chi sota"
Non devo tradurre vero....??
@Alex.

scusatemi
non era mia intenzione oltrepassare il limite
pardon moi