Quickwin request: support for shift-tab key

Quickwin request: support for shift-tab key

As a Quickwin developer I often create child windows that contain multiple regions, say a text region or graphics region as part of a gui, and I need to support keystroke navigation by the user. It is simple enough to support the <tab> key to go from one region to another, just as in a Windows dialog. But in a Windows dialog you can also use <Shift-Tab> to go backwards. In Quickwin there is apparently no way to trap this keystroke, and thus the only way to access some regions is the lengthy (irritating) process of "going round the world."

Quickwin provides the PASSDIRKEYS do intercept direction and page keys before Windows grabs them, to give the programmer (me) control over them. Surely this could be expanded to do the same for <Shift-Tab>?

There are a few other keys that would also be very good to support, but this is the most obvious one and appears to be a simple oversight.

10 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

I have not used the Quickwin routines, so you probably know more about what you are doing and what you need than me.

Have you looked at the Xeffort libraries and interfaces to Windows dialogs, e.g. at xeffort.com?

Regards, David

I'm aware of Xeffort, but a quick browse of that homepage tells me they don't have anything like this. Although I have to confess, the product may not be well presented because it seems they don't offer many useful tools (for me) at all. I may be missing something.

Can you post a simple example that shows what you refer to? I couldn't come up with one, but I'm not really well versed in QuickWin. As far as I knew, text and graphics "regions" were just parts of the bitmap and there was no support for tabbing.

Retired 12/31/2016

I think the OP is reffering to using tab to cyle though the controls on a dialog in the pre-defined tab order.

Not sure - dialog boxes are all handled by standard Windows message processing routines, QuickWin should not be relevant here. Shift-tab works in dialog boxes.

Retired 12/31/2016

Yes you are correct Steve, Shift tab works on controls, so I am niot sure I understand the OP question now....

Sorry about the confusion. By referring to "text regions" and cycling I was trying to convey the need for a feature. But here it is in more abstract terms.

The limitation I'm fighting is the use of function GETCHARQQ() which returns "the character representing the next keystroke." Every key has a keycode. Many key combinations have an extended key code, in which case the function has to be called again, but that's another story. Using this function I can provide code to take appropriate action instantly when the user presses a certain key. Some keys, such as arrows, are intercepted by Windows and cannot be trapped by GETCHARQQ. In these cases Quickwin provides the companion function PASSDIRKEYSQQ, which allows them to be trapped, as well as some additional keys like PageUp, PageDn, Ins, Del.

My applications use all of these to allow the user to navigate to different places on the screen, SIMILAR to the capability provided by a Windows dialog. But whereas a Windows dialog makes extensive use of the Shft-Tab key, and I would like to do the same, I cannot because GETCHARQQ does not trap this keystroke, even with the help of PASSDIRKEYSQQ.

Seems like this should be a simple thing to add.

Ok - so you want some way for GETCHARQQ to allow you to see a Shift-Tab - right?

Retired 12/31/2016


There are other notable omissions too, the leading demand in my shop being F10 (all other function keys can be seen, but not F10). But Shft-tab is my leading need.

Leave a Comment

Please sign in to add a comment. Not a member? Join today