At 16:46 2003-2-6 +0100, you wrote:
On a certain form I erase an existing list by the instruction "LstEraseList"
. Then I show a few usable buttons on the same form by the instruction
"CtlShowControl". The buttons are displayed within the area previously
occupied by the list. Under Palm OS 3.5 the routine is running well and the
buttons are usable. But under Palm OS 4.1 the buttons appear on the form as
well, but they aren't enabled, i.e. they don't respond to stylus taps. Can
anybody explain this behavior to me and suggest a solution to this problem?
By the way, I'm developing my programs under Code Warrior V.8. Thanks!
Don't use LstEraseList by itself -- it just erases the list, but it doesn't disable it. Instead, use FrmHideObject to make the list unusable. On Palm OS versions before 3.5, manually erase the list as you've done, but then manually unset the list's usable and enabled attributes. You might want to wrap the list show/hide code in your own glue function so you don't have to expose list internals in your main code.

BTW, the reason for the different behavior involves the search order for controls. This reversed from OS 3.5 to 4.0, so on the newer devices, the OS checks controls for hits in the opposite order that it did before.

--
Ben Combee <[EMAIL PROTECTED]>
CodeWarrior for Palm OS technical lead
Palm OS programming help @ www.palmoswerks.com

--
For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/


Reply via email to