By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
428,601 Members | 989 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 428,601 IT Pros & Developers. It's quick & easy.

Tab Order Add-In?

P: n/a
I have a form in A97 that requires many textboxes and comboboxes (about
300). The customer insists on seeing all the information on one form
so I can't break it up into several forms. Neither they nor I want to
use a tab control. Because of all this, the Tab Order control is quite
inefficient at organizing the tab order. Even the trick of wiggling
the mouse to the right and left while dragging a control or controls to
the top or bottom of the tab order doesn't speed it up enough. One
idea is to write the names and positions of the controls to a file, put
the controls into a long column, run Auto Order, then read the file to
reset the original positions of the controls. Another idea is to play
with the TabIndex property, perhaps by clicking on the controls in the
desired tab order while running code. Has anyone produced an Add-In
that improves the user experience for developers that need to change
the Tab Order for lots of controls? Does anyone have other ideas about
a good way to do this?

James A. Fortune
CD********@FortuneJames.com

Aug 16 '06 #1
Share this Question
Share on Google+
7 Replies


P: n/a
CD********@FortuneJames.com wrote in
news:11**********************@b28g2000cwb.googlegr oups.com:
I have a form in A97 that requires many textboxes and comboboxes
(about 300). The customer insists on seeing all the information
on one form so I can't break it up into several forms. Neither
they nor I want to use a tab control. Because of all this, the
Tab Order control is quite inefficient at organizing the tab
order. Even the trick of wiggling the mouse to the right and left
while dragging a control or controls to the top or bottom of the
tab order doesn't speed it up enough. One idea is to write the
names and positions of the controls to a file, put the controls
into a long column, run Auto Order, then read the file to reset
the original positions of the controls. Another idea is to play
with the TabIndex property, perhaps by clicking on the controls in
the desired tab order while running code. Has anyone produced an
Add-In that improves the user experience for developers that need
to change the Tab Order for lots of controls? Does anyone have
other ideas about a good way to do this?
You realize that you can select and move more than one control at a
time in the tab order dialog?

And that you can set the Tab Order property in the property sheet?

And that if you drop the controls on the form in order, they'll end
up with the right tab order?

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Aug 16 '06 #2

P: n/a
David W. Fenton wrote:
CD********@FortuneJames.com wrote in
news:11**********************@b28g2000cwb.googlegr oups.com:
I have a form in A97 that requires many textboxes and comboboxes
(about 300). The customer insists on seeing all the information
on one form so I can't break it up into several forms. Neither
they nor I want to use a tab control. Because of all this, the
Tab Order control is quite inefficient at organizing the tab
order. Even the trick of wiggling the mouse to the right and left
while dragging a control or controls to the top or bottom of the
tab order doesn't speed it up enough. One idea is to write the
names and positions of the controls to a file, put the controls
into a long column, run Auto Order, then read the file to reset
the original positions of the controls. Another idea is to play
with the TabIndex property, perhaps by clicking on the controls in
the desired tab order while running code. Has anyone produced an
Add-In that improves the user experience for developers that need
to change the Tab Order for lots of controls? Does anyone have
other ideas about a good way to do this?

You realize that you can select and move more than one control at a
time in the tab order dialog?
Yes. I said, "while dragging a control or controls."
>
And that you can set the Tab Order property in the property sheet?
Is this something other than the TabIndex property for the individual
control that I mentioned? Neither the individual controls nor forms in
A97 have a TabOrder property. Have I overlooked something?
>
And that if you drop the controls on the form in order, they'll end
up with the right tab order?
I don't have enough foresight to create the controls in an order that
follows the final tab order :-). Once coding has begun it's
inconvenient to drop controls because A97 sometimes fails to reattach
the event to the code when the code pre-exists. But your idea solved
most of the problem. I created a page header and saw that controls
moved back from the page header went to the end of the tab order
without affecting event code. The remaining problem was getting the
controls back to their original location. With that many controls on a
form they have to aligned like a matrix so the alignment tools allow me
to get them back in position fairly easily. Thanks.

James A. Fortune
CD********@FortuneJames.com

Aug 16 '06 #3

P: n/a
CD********@FortuneJames.com wrote:
David W. Fenton wrote:
>CD********@FortuneJames.com wrote in
news:11**********************@b28g2000cwb.googleg roups.com:
>>I have a form in A97 that requires many textboxes and comboboxes
(about 300). The customer insists on seeing all the information
on one form so I can't break it up into several forms. Neither
they nor I want to use a tab control. Because of all this, the
Tab Order control is quite inefficient at organizing the tab
order. Even the trick of wiggling the mouse to the right and left
while dragging a control or controls to the top or bottom of the
tab order doesn't speed it up enough. One idea is to write the
names and positions of the controls to a file, put the controls
into a long column, run Auto Order, then read the file to reset
the original positions of the controls. Another idea is to play
with the TabIndex property, perhaps by clicking on the controls in
the desired tab order while running code. Has anyone produced an
Add-In that improves the user experience for developers that need
to change the Tab Order for lots of controls? Does anyone have
other ideas about a good way to do this?
You realize that you can select and move more than one control at a
time in the tab order dialog?

Yes. I said, "while dragging a control or controls."
>And that you can set the Tab Order property in the property sheet?

Is this something other than the TabIndex property for the individual
control that I mentioned? Neither the individual controls nor forms in
A97 have a TabOrder property. Have I overlooked something?
>And that if you drop the controls on the form in order, they'll end
up with the right tab order?

I don't have enough foresight to create the controls in an order that
follows the final tab order :-). Once coding has begun it's
inconvenient to drop controls because A97 sometimes fails to reattach
the event to the code when the code pre-exists. But your idea solved
most of the problem. I created a page header and saw that controls
moved back from the page header went to the end of the tab order
without affecting event code. The remaining problem was getting the
controls back to their original location. With that many controls on a
form they have to aligned like a matrix so the alignment tools allow me
to get them back in position fairly easily. Thanks.

James A. Fortune
CD********@FortuneJames.com
TabIndex is the property you are looking for.

The idea of setting TabIndex in code while clicking the controls is kind
of intriguing... it would be easy, in fact, except you would have to
write an OnClick event for every control. 300 controls... ick. If you
did this you would want an environment variable to enable/disable
setting TabIndex. Maybe there's an API call that would return the name
of the control that was clicked... would reduce the code to one instance
of a three-line procedure. hmm...
--
Smartin
Aug 16 '06 #4

P: n/a
CD********@FortuneJames.com wrote in
news:11**********************@i3g2000cwc.googlegro ups.com:
David W. Fenton wrote:
[]
>And that you can set the Tab Order property in the property
sheet?

Is this something other than the TabIndex property for the
individual control that I mentioned? Neither the individual
controls nor forms in A97 have a TabOrder property. Have I
overlooked something?
The TabIndex *is* the property that gets altered when dragging in
the Tab Order dialog.
>And that if you drop the controls on the form in order, they'll
end up with the right tab order?

I don't have enough foresight to create the controls in an order
that follows the final tab order :-). Once coding has begun it's
inconvenient to drop controls because A97 sometimes fails to
reattach the event to the code when the code pre-exists. But your
idea solved most of the problem. I created a page header and saw
that controls moved back from the page header went to the end of
the tab order without affecting event code. The remaining problem
was getting the controls back to their original location. With
that many controls on a form they have to aligned like a matrix so
the alignment tools allow me to get them back in position fairly
easily. Thanks.
That's great. It never occurred to me that just dragging them off
the detail and back on would change the tab order for you -- glad
you thought of that!

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Aug 17 '06 #5

P: n/a

<CD********@FortuneJames.comschreef in bericht news:11**********************@i3g2000cwc.googlegro ups.com...
The remaining problem was getting the controls back to their original location.
I use the following 'trick' to copy controls from one form or report to another.
Result is the controls are in the *exact* position where they were in the former form or report:

1) Create a label called UL (UpperLeft) - Make the label invisible.
Make sure the position of the label is UpperLeft (0,0)
or simply delete the label and paste it back in the section where you need it.
2) Copy the needed controls and so on TOGETHER with this label
************************************************** *
3) Paste where you need them.

Result: *Exact same position* as before.
For instance this is great for a logo or picture that you need on more forms

Arno R
Aug 17 '06 #6

P: n/a

David W. Fenton wrote:
>
That's great. It never occurred to me that just dragging them off
the detail and back on would change the tab order for you -- glad
you thought of that!

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
The idea would likely never have occurred to me without your comment.
I might give Smartin's idea a try anyway though. It sounds fun.

Thanks again,

James A. Fortune
CD********@FortuneJames.com

Aug 17 '06 #7

P: n/a
CD********@FortuneJames.com wrote:
David W. Fenton wrote:
>That's great. It never occurred to me that just dragging them off
the detail and back on would change the tab order for you -- glad
you thought of that!

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/

The idea would likely never have occurred to me without your comment.
I might give Smartin's idea a try anyway though. It sounds fun.

Thanks again,

James A. Fortune
CD********@FortuneJames.com
Heh, let me know what you find out (^:

Also seems like you could design your own Tab Order control using a list
box with a much larger work area.

And I suppose you know the trick of setting tab orders in reverse? This
just spares you the trouble of remembering which index you are on as you
click through the controls. You click the last control in the desired
tab order, set its index to zero. Then click the next-to last, set it to
zero, and so on to the first control, setting each index to zero as you
go. This is not quite as convenient in Access as it is in VB though.

--
Smartin
Aug 17 '06 #8

This discussion thread is closed

Replies have been disabled for this discussion.