Mariordz, ahora recuerdo que yo tuve que hacer lo mismo. Adem谩s defin铆 los oSay's como
lWnatClick := .T. para que as铆, pinchando en el label cambiar el estado del RadioButon como si fuera su propio label. Este es el c贸digo que utilic茅, por si te sirvede algo.
DEFINE DIALOG oDlg NAME "GENECUOT" OF oWMain ...
聽 聽...
聽 聽REDEFINE RADIO oRad ID 321,322,323,324 OF oDlg 聽 // CONTROLES NUMERO 22,23,24,25
聽 聽REDEFINE SAY oSay[1] 聽 聽// CONTROL N潞 26 ( Es decir es el oDlg:aControls[26] )
聽 聽REDEFINE SAY oSay[2]
聽 聽REDEFINE SAY oSay[3]
聽 聽REDEFINE SAY oSay[4]
聽 聽...
聽 聽PonRads(oDlg,26) // 26 PORQUE EL PRIMER oSay ES EL CONTROL NUMERO 26
聽 聽...
ACTIVATE DIALOG oDlg CENTER ...
...
FUNCTION PonRads(oDlg,nCual)
聽 聽AEVAL( oDlg:aControls, { |o| o:lWantClick := .T. }, nCual, 4 )
聽 聽oDlg:aControls[nCual+0]:bLClicked := { || ChangeRad(oDlg,nCual-4,nCual-4) }
聽 聽oDlg:aControls[nCual+1]:bLClicked := { || ChangeRad(oDlg,nCual-4,nCual-3) }
聽 聽oDlg:aControls[nCual+2]:bLClicked := { || ChangeRad(oDlg,nCual-4,nCual-2) }
聽 聽oDlg:aControls[nCual+3]:bLClicked := { || ChangeRad(oDlg,nCual-4,nCual-1) }
RETURN NIL
FUNCTION ChangeRad(oDlg,nRad,nCual) // nRad VALDR脕 22 Y nCual 22, 23, 24 o 25
聽 聽AEVAL( oDlg:aControls, { |o| o:SetCheck( .F. ) }, nRad, 4 )
聽 聽oDlg:aControls[nCual]:SetCheck( .T. )
聽 聽oDlg:aControls[nCual]:oRadMenu:nOption := nCual-nRad+1
RETURN 聽NIL
Con esto, cuando pincho en uno de los SAY, el RadioButon de al lado se pone en .T. y todos los dem谩s en .F. como RadioButon normal.
Espero que te sirva.
Peaaaaaso de foro...
FWH 2007 - xHarbour - BCC55