Atribuir metodo a varios objetos de uma só vez?

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Avatar do usuário
ANDRIL
Usuário Nível 5
Usuário Nível 5
Mensagens: 1297
Registrado em: 06 Jul 2004 00:44
Contato:

Atribuir metodo a varios objetos de uma só vez?

Mensagem por ANDRIL »

Pessoal, tenho varios objetos como oEditbox1, oButton1 e etc.

No cadastro tenho um VALID que uso para tornar disponivel/indisponivel alguns objetos, estou fazendo assim:

Código: Selecionar todos


   @ 169,39 GET oEditbox1 VAR opBusca OF oGroup1  SIZE 19,24 ;
        STYLE WS_BORDER   PICTURE '9' MAXLENGTH 1 FONT oFontGet;
        VALID {|| opBusca$"12",;      
        if(opBusca="1",oButton2:disable(),oButton2:enable()),;
        if(opBusca="2",oButton1:disable(),oButton1:enable()),;
        if(opBusca="1",oEditbox3:disable(),oEditbox3:enable()),;
        if(opBusca="1",oEditbox4:disable(),oEditbox4:enable()),;
        if(opBusca="2",oEditbox1:disable(),oEditbox1:enable()),.t.}
tentei usar assim, mais deu erro:

Código: Selecionar todos

oButton2:=oEditbox3:=oEditbox4:disable()
Tem como deixa-los todos desabilitados de uma só vez, sem precisar de tantos IFs.

Ate+
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: Atribuir metodo a varios objetos de uma só vez?

Mensagem por sygecom »

Olá Andril,
Pode tentar usar assim:

Código: Selecionar todos

 @ 169,39 GET oEditbox1 VAR opBusca OF oGroup1  SIZE 19,24 ;
        STYLE WS_BORDER   PICTURE '9' MAXLENGTH 1 FONT oFontGet;
        VALID {|| DesabilitaAllGets( {oButton1,oButton2,oButton3,oButton4,oButton5} )   }

**********************************
Function DesabilitaAllGets( oOBJ )
**********************************
AEval( oOBJ, {|o|o:disable()} )
Return .T.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder