Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

Stop scrolling in a form with scroll wheel?


This topic is 7165 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

Hello,

I was wondering if there is a way to stop scrolling with the mouse wheel in windows. I have a Project->Tasks relation (1-M). I have the project data at the top and a portal at the bottom, which shows the descriptions of the tasks. I then click on a Task in the portal and (using go to related record) it takes me to a tasksDetail_Layout, which shows all the good details.

The problem is, if i have a mouse wheel, while in that view, i can scroll the wheel and it will take me to other tasks. I'd like to have a way to keep from going to any other tasks when using the wheel.

Once i have finished viewing the task and maybe editing it, I want to jump back to the Projecects/tasks view and still be on the project related. I'm using go to related record and this seems to work fine.

any suggestions would be appreciated.

Thanks,

Sincerely,

J__

Posted

Hi,

Thanks for the response. Good idea.

I was kind of hoping there might be some way to do it just for Filemaker.

i could see a way to hook it with a c++ dll in Windows XP (yes my sig says mac, but I do windows too); but with Apple, i don't know about using hooks in that environment (yet).

thanks,

Sincerely,

J__

/./

Posted

It would seem to me that disabling the scroll wheel at the operating system level is akin to using a shotgun to swat a fly. The scroll wheel is a very useful feature on Windows machines, and to expect users to disable something useful because you have a screen that doesn't work right with it is the wrong approach to take.

The problem (as I understand it) is that when the user gets to the Task layout, they can scroll through other tasks. Yes? If so, then the real solution is to find a way to limit the new layout so that it only displays the task or tasks you want them to see. I imagine two possibilities:

1) Use Go To Related Record and limit to related records only. That way, you'll get the tasks linked to the current parent record.

2) Build a script where you write the selected Task ID into a global field, then go to a layout that uses a relationship from the global field to the task ID. Then, the result list consists of a single record, and the scroll wheel will do nothing. AND, you r clients can use the scroll wheel elsewhere on their machines.

Posted

T-Square, thanks for the response.

Although Transpower did make an interesting suggestion, yeh, the layout was a problem.

I used a find

one interesting thing though is that if you are trying to filter a new record, it's pretty hard because the record has not been committed yet. So, using the PK to filter on didn't work i wound up comitting the record... and that changed everything... so far it looks like for the better.

from my project form i pass in the prj_id (PK) of table. I then

created a record, saved it, grabbed the UID of the record, popped it in the global and then did go to layout with that current record.

I tried go to related record, but .... oh are you saying to put the PK of the task in the global project, so then they are joined on that and only get one record ?

if so, interesting approach.

I'll have to sleep on that.

thanks,

sincerely,

J__

Posted

Yeah, in my experience, the commit record step is pretty much a given in 7.

Another idea that I just remembered using: if you use a script to go to the sub-layout, pass the current ID to the script and then insert the script parameter into a find sequence. In other words (and excuse my pseudo code):

MyScript:

New Window["Sub-Layout"]

Go To Layout["Sub-Layout"]

Enter Find Mode[]

Set Field["MySearchField"; Get(ScriptParameter)]

Perform Find[No Dialog]

This method is nice because you don't have a global field that can get screwed up.

HTH,

David

Posted

Hi J..., everyone,

No. Don't disable it from your OS.

Admittedly I just woke up, not even coffee yet, but if I read your request correctly ...

If all you want to do is disable the scroll on your mouse in windows so it doesn't move a User through form records, execute the script-step Show/Hide Status Area [ Lock; Hide]. Add this script-step to just your layout-switch scripts or you can even include this as part of your file startup routine. But you're a Mac, right? I don't believe it matters; that this will work in both environments - but it certainly works with Windows!!

If you use your Status Area, you're in trouble. And yes, scroll is a problem with form layouts because a User may not notice they've scrolled to a different record, thus changing information on the wrong record. Many have heavy mouse hands or sloppy mouse control and scroll it purely by accident. I always hide/lock it.

Well, now for coffee ...

LaRetta smile.gif

Posted

How about a new relationship; one that only shows the record in question as it relates to your global field. The layout would only show one record and so there would be nothing to scroll to...

  • 3 months later...
Posted

Or, yet another idea - Once you're at the layout & record you need, omit the record, and then show only ommitted records. That way, there is only one record in the found set.

This works especially handy of you're using multiple windows, since each window has it's own found set of records.

This topic is 7165 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.