Solved

Mouse Wheel behavior on Continuous Forms

Posted on 2006-11-15
6
532 Views
Last Modified: 2008-01-09
I have a continuous form in Access 2003 that does not have enough records to
fill the page. When scrolling up with the mouse wheel, the first record will
'disappear' and will not come back into view unless I reset the form or use
the up arrow on the what should be dormant vertical scrollbar.

I've read a few posts on this and they all come from one poster who states
that this is a bug and there is no work-around.

I'm hoping there is a fix or workaround...

Can anyone help?

Thanks,

Scott
 
0
Comment
Question by:crapo
6 Comments
 
LVL 2

Expert Comment

by:jay_s5
ID: 17951776
Are you saying you want to stop the mouse wheel from scrolling through records, and instead stay on a single record?

If I'm understanding you correctly, as Microsoft would say, "That's a FEATURE, not a bug." There is a workaround to prevent the mouse wheel from scrolling through records that might work for you. It involves downloading and registering a DLL and a little code.

Take a look here:

http://support.microsoft.com/default.aspx?scid=kb;en-us;278379

The KB article is for Access 2000, but I believe the fix still works. I have used it in Access XP with good results.
0
 

Author Comment

by:crapo
ID: 18021908
>>Are you saying you want to stop the mouse wheel from scrolling through records, and instead stay on a single record?<<

I appreciate your help, but it is not the same 'issue'.   The bug is an issue that hides the first record on continuous forms when the form is not full after using the mouse wheel.

I kind of solved it by adding this code:

Private Sub Form_MouseWheel(ByVal Page As Boolean, ByVal Count As Long)

    'scroll wheel control
    Dim intCurrent As Integer, rs As Recordset, strControl As String
    Set rs = Me.Recordset

    'get current record and current control
    intCurrent = Me.CurrentRecord
    If intCurrent > 1 Then intCurrent = intCurrent - 1
    strControl = Me.ActiveControl.Name
   
    'requery form
    Me.Requery
   
    'reset focus
    Me.Controls(strControl).SetFocus
    rs.Move (intCurrent)

End Sub


What it does is lock in the current record and control on the form, requery the form (which resets the bug) and finally set the focus back to the proper position.



Moderator: please close this question, as I found and posted a work-around to my question.

Thanks.
0
 
LVL 2

Expert Comment

by:jay_s5
ID: 18022372
I'm glad you got it solved. What seems like it "should be" in Access often isn't.
0
 
LVL 8

Expert Comment

by:Jillyn_D
ID: 18028748
Scott,

A simpler work around might be to test if the recordset contains enough records to requires the scroll...if not, disable wheel...

~Jillyn
0
 
LVL 1

Accepted Solution

by:
DarthMod earned 0 total points
ID: 18357065
PAQed with points refunded (250)

DarthMod
Community Support Moderator
0

Featured Post

Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will show, step by step, how to integrate R code into a R Sweave document
This is an explanation of a simple data model to help parse a JSON feed
In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question