I've been building forms for three years now, and I've gotten pretty good at forcing them to do what I want. One reoccurring issue is the tab order. My forms have a ton of buttons, and for the most part, I would like to be able to exclude them from the tab order. On top of that, I've seen issues where repeating subforms will confuse the tab order as well. For the past two years, I've been maunally coding in the tab order on a field by field basis. On the exit event of all controls, I include the following:
if (xfa.event.commitKey == 3)
This is, of course, the simplest version. A lot of the time in the last field of a repeatable subform, I detect if there is another instance of the subform, and if so, I set the focus to the first field in the next instance.
The most annoying part of all this is that I wouldn't have to be so hardcore if I could use the Livecycle GUI to exclude buttons from the tab order. If that were the case, I'd be able to save myself a lot of thinking and work. Is there an attribute that I can set to skip the buttons? Even something that I could hardcode into the xml would be worth looking into. Is setFocus my only option?
Thanks for your help... I just want to make sure I'm not doing something that takes a ton of time for no reason. If setFocus is my only option, I'll live with it.
In addition we have an example form here: http://assure.ly/gBUUXB, which highlight Howard's point about the automatic tabbing order being set by the relative x/y coordinates of objects (working from the top/left) and that once an object in a subform has focus, tabbing will work through the remaining objects in the subform before coming back out to the rest of the form.