Clipper On Line • Ver Tópico - No Clipper era Assim e na Minigui?

No Clipper era Assim e na Minigui?

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

No Clipper era Assim e na Minigui?

Mensagempor Ricardo Mauricio » 02 Dez 2009 07:41

Ola Gente
Depois de muito ler a respeito de Harbour e da Minigui decidi então tentar migrar alguns de meus aplicativos, mas é claro que no decorrer do percurso surgiu algumas duvidas, então estou aqui para pedir a ajuda de vcs colegas.

Bem Antes no clipper guando eu queiria colocar o nome do meu cliente na tela era assim.

*------------------------------------------------------------------------------*
LOCAL bMostra     := { || DEVPOS( 4,23 ), DEVOUT( LEFT(Cliente->NOME,40), 'N/W' ) }

  mHide(); EVAL( bTela ); mShow()
 
    @  4,15 GET nCodigo  PICTURE '99999-9'COLOR 'N/W,W+/B,,,W+/B';
                         VALID( Contrato->(DBSEEK(nCodigo)), IF(Contrato->(!FOUND()), ALERTA('NAO CADASTRADO,           VERIFIQUE',{'Pressione ENTER'}),EVAL(bMostra)),Contrato->(FOUND()))
    READ
*------------------------------------------------------------------------------*

E agora com a Minigui como é que eu posso fazer para colocar na tela o nome do cliente ja que esta amarrado en outro DBF ?

STATIC PROCEDURE Nuevo()
*------------------------------------------------------------------------------*
    DEFINE WINDOW Pricipal      ;
           AT 0,0                         ;
           WIDTH 800                   ;
      HEIGHT 600               ;
      TITLE 'Cadastro'           ;
      MODAL            ;
      NOSIZE CURSOR NIL     ;
      FONT 'ARIAL' SIZE 12

        @  10,  10 FRAME FRAME_1 WIDTH 780 HEIGHT 550

        @  20,  23 LABEL LABEL_1 VALUE 'Cod. do Cliente:' WIDTH  150 BOLD
        @  20, 150 TEXTBOX nCodido WIDTH 75 NUMERIC MAXLENGTH 6 ON ENTER ( Cadastro->(DBSEEK(Vist_Nova.nCodigo.Value)), IF(Cadastro->(!FOUND()), MsgExclamation('Não Encontrado'),cNome := Cliente->NOME),Cadastro->(FOUND()))

        @  20, 323 LABEL LABEL_2 VALUE cNome WIDTH  150 BOLD

    END WINDOW

    CENTER WINDOW Principal
    ACTIVATE WINDOW Principal

RETURN


Bem assim eu consigo pelo menos entrar no DBF e achar o nome do cliente so não sei como eu posso retornar e colocar o nome na tela novamente. Ja quebrei a cabeça. :%

Sei que para alguns de vcs deve ser coisa simples para pra mim que to começando aiaiai uiuiui

---
Nota da Moderação (Maligno):
A presente mensagem foi editada para a inserção das tags de indentação de código. Se ler o código alheio já é uma coisa extremamente aborrecida e difícil, sem a indentação fica muito pior. Indentando, pode-se notar agora, melhora muito. Portanto, por favor, futuramente, quando for postar código e/ou estruturas e/ou scripts, mesmo que em menor tamanho, use essas tags de identação. Aliás, isso já incentiva um pouco mais pessoas a ler o código e, assim, crescem suas chances de ter seu problema resolvido. Ou seja, você também ganha.
Avatar de usuário

Ricardo Mauricio
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 17
Data de registro: 24 Nov 2009 08:09
Cidade/Estado: Londrina
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: No Clipper era Assim e na Minigui?

Mensagempor Toledo » 02 Dez 2009 14:55

Tenta assim:

Principal.cNome.value := Cliente->NOME

"Principal" é o nome da janela (Window) onde a label "cNome" está.

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Re: No Clipper era Assim e na Minigui?

Mensagempor Ricardo Mauricio » 02 Dez 2009 15:02

Obrigado caro colega

Foi so mudar e pronto

@ 20, 150 TEXTBOX nCod_Imo WIDTH 75 NUMERIC MAXLENGTH 6 ON LOSTFOCUS ( Cadastro->(DBSEEK(Vist_Nova.nCodigo.Value)), IF(Imovel->(!FOUND()), MsgExclamation('Não Encontrado'),Vist_Nova.Label_2.Value := Cliente->NOME),Cadastro->(FOUND()))

@ 20, 250 LABEL LABEL_2 FONT 'ARIAL' SIZE 12 BOLD WIDTH 230 FONTCOLOR {255,0,0}

Agora ta uma beleza
Muito Obrigado
Avatar de usuário

Ricardo Mauricio
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 17
Data de registro: 24 Nov 2009 08:09
Cidade/Estado: Londrina
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: No Clipper era Assim e na Minigui?

Mensagempor Ricardo Mauricio » 03 Dez 2009 15:39

Caro Colega
Quero me desculpar pelo meu importunio, mas que falta faz um manual em portugues detalhado.
Apesar de achar o Projeto HMG do Roberto Lopes Otimo, poderi vir com um manual em portugues. ou uns exemplos melhores. ja que não veem aqui estou.

Agora apareceu outra duvida para variar.

Antes no clipper quando eu queria dentro de um browse achar os itens eu usando a primeira letra e o browse ia para todos os itens que começavam com a letra que eu queria. Era uma beleza.

CASE UPPER( CHR( nTecla ) ) $ 'ABCDEFGHIJLMNOPQRSTUVWXYZ0123456789'
            DBSEEK( UPPER( CHR( nTecla ) ) )
            IF FOUND()
             Estabilize( oTab )
            ELSE
             DBGOTOP(); oTab:REFRESHALL()
             ALERTA( 'Busca Finalizada, nao ha Itens' )
            ENDIF


e agora o que eu uso neste Define Browse da minigui.

        @ 156,100 BROWSE Browse_1       ;
          WIDTH 200                 ;
        HEIGHT 210                ;
        HEADERS { 'Comodos' }          ;
        WIDTHS { 200 }       ;
                  WORKAREA Comodos            ;
        FIELDS { 'Comodos->COMODO' }   ;
                  ON CHANGE  Vist_Nova.Control_1.Value := Comodos->COMODO ;
                  ON DBLCLICK (   Vist_Nova.cComodo.Value:= Comodos->COMODO, If(!BloquearRegistro(),Vist_Nova.Browse_2.SetFocus,Nil) )



alias se alguem tiver um manual melhor para me fornecer eu agradeceria.
Avatar de usuário

Ricardo Mauricio
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 17
Data de registro: 24 Nov 2009 08:09
Cidade/Estado: Londrina
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: No Clipper era Assim e na Minigui?

Mensagempor Toledo » 03 Dez 2009 17:17

Ricardo, dê uma olhada no exemplo que está na mensagem abaixo:

http://www.pctoledo.com.br/forum/viewtopic.php?p=13528#p13528

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
Avatar de usuário

Toledo
Administrador

Administrador
 
Mensagens: 3038
Data de registro: 22 Jul 2003 18:39
Cidade/Estado: Araçatuba - SP
Curtiu: 263 vezes
Mens.Curtidas: 258 vezes

Re: No Clipper era Assim e na Minigui?

Mensagempor Ricardo Mauricio » 04 Dez 2009 09:52

Colega Toledo

A Dica que vc deu é otima, tenho certeza que eu a usarei em outro modulo do meu sistema. Obrigado

Mas o que eu mesmo queria é procurar o item dentro do browse sem ter que usar um TextBox.

Apenas teclar uma letra e o browse ir para os item que começam qua a letra que teclei sem usar (Enter ou Mouse), como o meu sistema em clipper faz.

Desde ja agradeço todos
Avatar de usuário

Ricardo Mauricio
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 17
Data de registro: 24 Nov 2009 08:09
Cidade/Estado: Londrina
Curtiu: 0 vez
Mens.Curtidas: 0 vez

Re: No Clipper era Assim e na Minigui?

Mensagempor rochinha » 16 Abr 2010 21:39

Amiguinho,

Force o foco para ficar no TextBox e esconda-o da vista do usuário usando algum parametro HIDE do controle.

Como não acompanho a MiniGUI não sei como funciona o controle Browse nela, mas analise o código do mesmo e verifique a estrutura de controle de eventos de teclado, como setas e coloque mais um IF/CASE para verificar se teclas com letras estão sendo pressionadas.

...
   if Asc(nTecla) >= 65 .and Asc(nTecla) <= 127
      ... // rotina de pesquisa
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4547
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 806 vezes
Mens.Curtidas: 246 vezes




Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 5 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro