Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Looping through option group control
Message
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Environment versions
Visual FoxPro:
VFP 8 SP1
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
Visual FoxPro
Miscellaneous
Thread ID:
01302955
Message ID:
01303010
Views:
14
>Try
>
>lnLeftNew = 5
>lnGap = 10
>FOR i=1 TO Thisform.optiongroup1.ButtonCount
>	loButton = GETPEM(Thisform.optiongroup1, "Option" + TRANSFORM(i))
>	IF loButton.Visible
>		loButton.Left = lnLeftNew
>		lnLeftNew = lnLeftNew + loButton.Width + lnGap
>	ENDIF
>ENDFOR
>loButton = NULL
>Thisform.optiongroup1.Width = lnLeftNew
>
>
>>I am trying to loop through option group control and set the option buttons .Left value based on whether the control is visible or not; however, I can't seem to get the values or set the values of the option button. I use an array that has the location value for the .left property. Basically, I'm trying to move the option button to left if the option button is visible. I'm missing something or is there a better way.
>>
>>
>>WITH thisform
>>	LOCAL visible_val, loopcnt, arraycnt
>>	visible_val = '' && hold visible value of option button
>>	loopcnt = 1 && loop counter
>>	arraycnt = && array counter
>>
>>	DIMENSION gaMyArray(1,5)
>>	gaMyArray(1,1) = 5
>>	gaMyArray(1,2) = 54
>>	gaMyArray(1,3) = 125
>>	gaMyArray(1,4) = 237
>>	gaMyArray(1,5) = 345						
>>	DO WHILE loopcnt <= 5  && have 5 option buttons in optiongroup
>>		
>>		visible_val = thisform.+"Optiongroup1.option"+loopcnt+".visible"
>>		IF visible_val = .t.
>>			arraycnt = arraycnt + 1
>>			thisform.+"Optiongroup1.option"+loopcnt+".left" = gaMyArray(1,arraycnt)  && sets the next .left value
>>		ENDIF
>>		loopcnt = loopcnt + 1
>>	ENDDO
>>ENDWITH
>>
>>
>>thanks
>>Nick

Thanks Sergey, I had forgotten everything about the GETPEM. Thanks again

Nick
Previous
Reply
Map
View

Click here to load this message in the networking platform