realbasic-nug
[Top] [All Lists]

Re: ... Remove Control from Tab order (simple work around)

To: REALbasic NUG <realbasic-nug at lists dot realsoftware dot com>
Subject: Re: ... Remove Control from Tab order (simple work around)
From: Tom Benson <tombenson at mac dot com>
Date: Wed, 30 Jan 2008 18:22:30 +1100
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug at lists dot realsoftware dot com
References: <012920082204 dot 6405 dot 479FA2D20005E6C80000190522070208530B049D0199D30E0E05 at comcast dot net>
I've done a lot of high volume data entry work, and couldn't agree  
more, but...

There is a very simple work around for this... it's a bit hackish but  
it works well.....

Each Window has A Dictionary property called CanGetFocus

In each control's open event, I add a dictionary entry to the  
dictionary with a reference to the control as the key and a boolean  
value.

e.g.

        CanGetFocus.Value(me) = False


Than in the gotFocus event of that control

        If not CanGetFocus(me) then  
DeclareLib.PressKey(DeclareLib.PressKey.kTab)


PressKey is a cross platform function that calls a system level  
declare to simulate a press of the Tab Key...

This skips focus of the control and moves it onto the next control in  
the chain which accepts focus.. and the best part is you can get and  
set this ability at runtime by altering the dictionary entry...

- Tom


On 30/01/2008, at 9:04 AM, keatk at comcast dot net wrote:

> http://www.realsoftware.com/feedback/viewreport.php?reportid=eriskqmn
>
> Report ID:  eriskqmn
> Summary:  Provide a way to Remove Control from Tab order
> Category:  REALbasic / Framework / GUI Applications / Not Listed
> Severity:  Feature Request
>
>
> Description
> A data entry from may have fields that are rarely changed  
> (autofilled or empty
> 99% of the time) but needs to be acessable/editable but are  
> logically grouped
> information wise with certain other info that is always entered. In  
> a form with
> a lot of empty or autofilled fields fields you don't necessarily  
> want to force
> the operator to have tab through them all to fill out the the form.
>
> In that case would the ability to be able to have the framework skip  
> controls
> when Tabbing such that they were accessble only by Control keys,  
> menuitem or
> mouse would be valuble.
> That is most important for heavy data entry/database apps.
>
> Yes it can be done in code but that means the controls to be skipped  
> have to know which controls come before and after or puting code in  
> the controls before
> and after it thus breaking ecapuslation badly and that makes design  
> and
> maintenance/changes much more difficult and bug prone
>
> One possible solution is to give RectControls a boolean property  
> settable in the
> IDE AND in code called SkipOnTab that the framework used to decide  
> where to change
> focus to on tab and shift tab.
>
> Workaround
> Hardcode TabOrder.
> _______________________________________________
> Unsubscribe or switch delivery mode:
> <http://www.realsoftware.com/support/listmanager/>
>
> Search the archives:
> <http://support.realsoftware.com/listarchives/lists.html>

_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives:
<http://support.realsoftware.com/listarchives/lists.html>


<Prev in Thread] Current Thread [Next in Thread>