Page 1 of 1

Metodos

PostPosted: Sun Feb 26, 2006 7:51 am
by wmormar
Saludos amigos,

Tengo el siguiente detalle.

Code: Select all  Expand view
              REDEFINE BTNBMP oBtn[1] ID 201 RESOURCE "BRW.TERMINAR" NOBORDER OF ::oDlg ;
                       ACTION [color=red]::End()[/color] ;
                       MESSAGE "Regresar a panel principal"


La cuestión es que por ejemplo ::End() es de una clase que hice y no de BTNBMP, pero cuando doy click en el boton me dice que no existe el metodo en TBTNBMP, y eso no es correcto.

Hay alguna manera de definirlo y no lo tome el TBBNTBMP?

Mil gracias de antemano

PostPosted: Sun Feb 26, 2006 12:02 pm
by Antonio Linares
William,

Usa:

local this := Self

...

... ACTION this:End() ...

PostPosted: Sun Feb 26, 2006 4:01 pm
by wmormar
Antonio Linares wrote:William,

Usa:

local this := Self

...

... ACTION this:End() ...


Funciono perfecto.

Habría algo que modificar en la clase para no utilizar this := self o es la unica solucion?

Saludos y gracias por tu tiempo

PostPosted: Sun Feb 26, 2006 6:47 pm
by Antonio Linares
William,

Es la única solución cuando hay varios "Self" en ámbito.

PostPosted: Mon Feb 27, 2006 5:53 am
by wmormar
Antonio Linares wrote:William,

Es la única solución cuando hay varios "Self" en ámbito.


Gracias mil

PostPosted: Mon Feb 27, 2006 6:05 am
by wmormar
Antonio Linares wrote:William,

Es la única solución cuando hay varios "Self" en ámbito.


Antonio,

Me olvidaba de comentar que con la clase TSButton de MMercado no hay problemas al aplicar ::end() en el action, hay algo en particular con la btnbmp?

Gracias de antemano

PostPosted: Mon Feb 27, 2006 9:19 am
by Antonio Linares
William,

Que se le pasa "Self" al evaluar el codeblock.

PostPosted: Mon Feb 27, 2006 9:38 am
by wmormar
Antonio Linares wrote:William,

Que se le pasa "Self" al evaluar el codeblock.


Antonio,

Mil gracias por tu tiempo