` Changing default button at runtime (Lee White ) - Icetips Article
Icetips - Templates, Tools & Utilities for Clarion Developers

Templates, Tools and Utilities
for Clarion Developers

Icetips Article

Back to article list   Search Articles     Add Comment     Printer friendly     Direct link  

Par2: Changing default button at runtime
1999-04-01 -- Lee White
 
Try ThisWindow.TakeSelected, 2800 using something like: IF FIELD() <> ?Browse:3 ?Change:4{PROP:Default} = FALSE ?Ok{PROP:Default} = TRUE ELSE ?Ok{PROP:Default} = FALSE ?Change:4{PROP:Default} = TRUE END From my experience you ALWAYS need to turn off the default attribute on one control before setting on another. RJ Miller adds: For anyone interested have found out how things work. The final code to accomplish this is as follows and was placed in ThisWindow.TakeSelected/2800. Case field() Of ?Browse:3 Loc:DefaultButton{prop:default} = FALSE Loc:DefaultButton = ?Change:4 ?Change:4{prop:default} = TRUE Of ?Ok OrOf ?Cancel OrOf ?Insert:4 OrOf ?Change:4 OrOf ?Delete:4 Else Loc:DefaultButton{prop:default} = FALSE Loc:DefaultButton = ?Ok ?Ok{prop:default} = TRUE End It seems that you MUST reset the default button PRIOR to setting a new default button or the setting will be ignored. Also individual buttons are managed SOMEWHERE. Not sure where but attempting to manage them does not work... best just ignored and let Clarion manage them. It would seem that since the default button is a window based setting it would be a property of the window object... just a thought thrown out without much insight into why things are the way they are. Also would be good to have a default button based on the tab structure as generally the user's focus has changed when entering the sheet/tab structure. But anyway I learned a lot fighting this small battle.


Today is April 20, 2024, 3:54 am
This article has been viewed 35108 times.



Back to article list   Search Articles   Add Comment   Printer friendly

Login

User Name:

Password: