Mudar ACTION do BUTTONEX

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

chicaomogi70
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 15 Fev 2022 14:36
Localização: Mogi das Cruzes - SP

Mudar ACTION do BUTTONEX

Mensagem por chicaomogi70 »

Vi na documentação, que é possivel alterar o ACTION do BUTTONEX, mas não existe nenhum exemplo de como fazer isso.

Alguém sabe como fazer?

E postar um exemplo de como fazer

Aproveitando, consegui colocar nomes dinamicos no TEXTBOX,LABEL,COMBOBOX e funcionou perfeitamente, mas não consegui colocar nomes dinamicos no DEFINE WINDOW e na tela de GRID, gostaria de saber se é possivel fazer isso nessa tela de WINDOW e na tela de GRID.
ivanil
Usuário Nível 3
Usuário Nível 3
Mensagens: 166
Registrado em: 11 Set 2004 15:13
Localização: Florianópolis/SC

Mudar ACTION do BUTTONEX

Mensagem por ivanil »

Ola,

o Exemplo abaixo não faz o muito sentido mas demonstra o uso do que precisas de uma forma bem simplificada;
Isso que quer fazer é uma das maravilhas que uso, deixa a logica separada da tela;

Código: Selecionar todos


#include <hmg.ch>
Function Main( )
    Local cForm := "NomedoForm" 
    
    DEFINE WINDOW &(cForm) AT 334, 382 WIDTH 341 HEIGHT 177  TITLE "" MAIN

        DEFINE BUTTON oButton1
            CAPTION "&oButton1"
            COL 216
            HEIGHT 26
            ROW 12
            TRANSPARENT TRUE
            WIDTH 96
        END BUTTON

        &(cForm).OnInit := {||Main_OnINIT(cForm)}
    END WINDOW
    &(cForm).Center

    &(cForm).activate()

    REturn .T.
    ***********************************************************
    //////////////////////////////////////////////////////////
    ***********************************************************
Static function Main_OnINIT(cForm)
    Local i,nRow
    &(cForm).oButton1.Action := {||MsgInfo()}
    nRow := 13
    For i=1 to 5
        DEFINE LABEL "oLabel"+hb_ntos(i)
            Parent &(cForm)
            COL 13
            HEIGHT 20
            ROW nRow
            VALUE "oLabel1"
            VCENTERALIGN TRUE
            WIDTH 100
        END LABEL
        nRow += 22
    Next
    Return .T.

chicaomogi70
Usuário Nível 1
Usuário Nível 1
Mensagens: 10
Registrado em: 15 Fev 2022 14:36
Localização: Mogi das Cruzes - SP

Mudar ACTION do BUTTONEX

Mensagem por chicaomogi70 »

Esse exemplo do ACTION serviu perfeitamente, consegui fazer o que precisava.

Muito obrigado.

A parte de colocar o nome dinamico no DEFINE WINDOW não funcionou não.
ivanil
Usuário Nível 3
Usuário Nível 3
Mensagens: 166
Registrado em: 11 Set 2004 15:13
Localização: Florianópolis/SC

Mudar ACTION do BUTTONEX

Mensagem por ivanil »

Bom dia
Este exemplo é compilavel, foi testado aqui
Teste o exemplo.
Talvez você esteja tentando usar a macro fora do módulo ou fora da visibilidade do compilador.Isso é possivel, mas é necessário declarar o formulário.
Responder