FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para CA-Clipper Error al compilar
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Error al compilar
Posted: Thu Nov 10, 2005 03:57 AM
Hola Amigos,,,
Debo controlar 60 botones, asi que lo hago de esta manera:

FOR nCont := 1 TO 60
REDEFINE BTNBMP oMesa[nCont] ;
RESOURCE "VACIA" NOBORDER ;
ID (200 + nCont) OF oFld:aDialogs[1] ;
ACTION ( OpcionMesa(1, ::nId - 200) )
NEXT nCont
oMesa[::nId]:bRClicked := {|nRow,nCol| OpcionMesa(2, ::nId - 200)}

aqui al compilar sale un error, al parecer no acepta ::nId, ::nId me devuelve el numero del identificador del btnbmp, asi se que btnbmp he presionado...

Alguna solucion??
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Error al compilar
Posted: Thu Nov 10, 2005 09:01 PM

Willi,

Que error te sale ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Error al compilar
Posted: Thu Nov 10, 2005 09:15 PM
Ups. Sorry, olvide mencionarlos

En este codigo.

FOR nCont := 1 TO 60
REDEFINE BTNBMP oMesa[nCont] ;
RESOURCE "VACIA" NOBORDER ;
ID (200 + nCont) OF oDls ;
ACTION ( OpcionMesa(1, ::nId - 200) )
NEXT nCont
oMesa[::nId]:bRClicked := {|nRow,nCol| OpcionMesa(2, ::nId - 200)}


El error sale en la linea roja

WARNING c1003 AMBIGUOS REFERENCE "SELF"

Salu2
Willi
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Error al compilar
Posted: Fri Nov 11, 2005 12:51 AM

Willi,

Prueba esto:

SetRClicked( oMesa )

oMesa[ oMesa:nId ]:bRClicked = { | nRow, nCol | OpcionMesa( 2, oMesa:nId - 200 ) }

return nil

y llama a SetRClicked() antes del NEXT

Si no funcionase así, prueba con:

SetRClicked( oMesa, nCount )

oMesa[ nCount ]:bRClicked = { | nRow, nCol | OpcionMesa( 2, nCount - 200 ) }

Esto es a lo que se llama "detached locals" (variables locales que quedan "atrapadas" dentro de un codeblock :)

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion