Testing Tab Index and keyboard shortcuts in the Flash IDE

In Flash CS4, you can now test your keyboard shortcuts and tab navigation right in the IDE. You just need to select the "Control > Disable Keyboard Shortcuts" option when you run your movie.

ideKeyboardShortcuts.jpg More

Custom Class to Manage Tab Order in AS3 - TabIndexManager

If you've ever tried to make a dynamic flash movie keyboard accessible, you know it can be filled with headaches. Managing tabIndexes (tabIndices? tabIndicia?) can be a MAJOR pain, especially if you are loading in external swfs. Tab indexing is not self organizing the way the Display List is. If you accidentally assign two InteractiveObjects the same tabIndex you've got a problem. Their order in the tab index may not be what you want, and one or both may even become unreachable.

Another problem is that tabIndexes do not have a heirarchical relationship. Altering the tabIndex of a movieClip does not affect the tabIndexex of that clip's children. More

tabIndex and tabEnabled - not exactly intuitive

In AS3, the InteractiveObject class has properties related to tab-navigation: tabEnabled and tabIndex. You can set my_mc.tabEnabled = true and Flash Player will automatically determine where in the tab order that clip belongs, or you can specify where it belongs in that order by setting my_mc.tabIndex = someNumber.

You do not have to set tabEnabled to allow tabbing to an object, but if you do set it, it will take precedence. The following example results in a non-tabable movieclip.

my_mc.tabEnabled = false;  
my_mc.tabIndex = 1;

But try this: More

my_mc.tabIndex = 1;
trace(my_mc.tabEnabled);        //false