Logo

Hacker’s Guide to Visual FoxPro
An irreverent look at how Visual FoxPro really works. Tells you the inside scoop on every command, function, property, event and method of Visual FoxPro.

TabStop

This property determines whether you can get to a control with the keyboard.

Usage

oObject.TabStop = lCanTabHere
lCanTabHere = oObject.TabStop

You can use TabStop to make some items mouse-only. For example, you can emulate the Mac interface by setting TabStop to .F. for all buttons, check boxes and the like. (We can’t imagine why anybody would want to work that way, but it is the Mac standard.) If your users demand this interface convention, make sure all of your graphical controls have hot keys, so reaching for the mouse isn’t mandatory to make it through a form.

TabStop is most useful when you want, for example, to let the user tab through the data-entry fields without having to tab through all the buttons, too. The downside of this, of course, is that the user then has to resort to button hot keys or switch to the mouse to save her data.

You can change TabStop at runtime, but we don’t recommend it. It seems like a good way to terminally confuse your users.

TabStop is ignored for controls in a column of a grid. The docs say that it's read-only in that case, but in fact you can change it. Your changes are ignored, however. Seems that controls in a grid, if available, must be tab-able.

Example

* Keep user from tabbing into all buttons on a form
* Actually this only affects buttons based on the base classes
ThisForm.SetAll("TabStop", .F., "CommandButton")
ThisForm.SetAll("TabStop", .F., "OptionButton")

See Also

Enabled, ReadOnly, TabIndex