*--myNewForm.Init *-- For demo purposes, I will assume only your textbox objects have the property 'strcaption' DODEFAULT() lnObjects = AMEMBERS(laObjects, THIS, 2) FOR lnCount = 1 TO lnObjects *-- Look at each member, but only look certain ones loObject = EVALUATE('THIS.' + laObjects[lnCount]) *-- *-- Here we have a container, so cycle it just like you would a form.... *-- IF UPPER(loObject.BaseClass) = 'CONTAINER' *-- remember, we need some new variables to work with... just increment the original for ease of use lnObjects1 = AMEMBERS(laObjects1, THIS, 2) FOR lnCount1 = 1 TO lnObjects1 loObject1 = EVALUATE('THIS.' + laObjects1[lnCount1]) IF UPPER(loObject1.BaseClass) = 'TEXTBOX' loObject1.strcaption = THIS.Caption ENDIF NEXT NEXTI do this all the time when I have certain global objects with specific properties....
*--myNewForm.Init > >*-- For demo purposes, I will assume only your textbox objects have the property 'strcaption' >DODEFAULT() >lnObjects = AMEMBERS(laObjects, THIS, 2) >FOR lnCount = 1 TO lnObjects > *-- Look at each member, but only look certain ones > loObject = EVALUATE('THIS.' + laObjects[lnCount]) > IF UPPER(loObject.BaseClass) = 'TEXTBOX' > loObject.strcaption = THIS.Caption > ENDIF >NEXT>