Clipper On Line • Ver Tópico - TEXT BOX DE JANELA CHILD OU MODAL

TEXT BOX DE JANELA CHILD OU MODAL

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

 

TEXT BOX DE JANELA CHILD OU MODAL

Mensagempor JoséQuintas » 16 Nov 2021 16:18

Mas eu já falei qual é o problema.
Está tentando acessar algo que não existe, a mensagem de erro está certa.
Não tem como acessar o campo de uma tela, sendo que a tela ainda nem existe nesse ponto.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18150
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

TEXT BOX DE JANELA CHILD OU MODAL

Mensagempor Max » 16 Nov 2021 21:43

Boa noite!!!

Depois de uns 2 dias direto, trabalhando nesse caso, informo que graças a ajuda do Sr. Souto e do Sr. Quintas, consegui alcançar o objetivo desejado.

Fiz o que o Sr. Souto me orientou: padronizei o fomato de definição do Text_box.

Fiz o que o Quintas me orientou:

Alterei os nomes das funções, que estavam confusas.
Organizei a declaração de variáveis logo no início do código.

Fiz a identação correta: (Eu acredito que isso também influenciou muito no erro apresentado anteriormente, mas, nunca li nada a respeito.

De qualquer forma, por mais primitivo que possa aparecer minhas dificuldades, consegui resolvê-las, graças a ajuda dos Srs. Souto e Quintas.

Informo ainda, que sou iniciante, que aprendi a programar em CLipper, lá em 1996, e fiquei fascinado. Desde o ano passado, ao pesquisar sobre linguagens de programação, eu li que o CLipper havia sido migrado para o Harbour, e a partir de então, tenho me aprofundado nessa linguagem, e gostado bastante.

Confesso, que eu avancei MUITO, pois, sozinho e somente observando e testando exaustivamente os exemplos que vem na pasta "C:\HMG.3.5\SAMPLES", assim como obtendo informações nesse portal, consegui resolver grandes problemas do meu dia-dia.

Agradeço muito a atenção que me foi dada.

Abaixo, segue o código, devidamente corrigido e funcionando.
#include "hmg.ch"
#include "hbclass.ch"
#include "minigui.ch"
#include "common.ch"

Function main()

   REQUEST HB_GT_GUI_DEFAULT
   REQUEST DBFNTX
   REQUEST DBFCDX, DBFFPT
   HB_LANGSELECT("PT")
   REQUEST HB_LANG_PT
   REQUEST HB_CODEPAGE_UTF8EX
   hb_cdpSelect( "UTF8EX" )   
   HB_SETCODEPAGE("PT850")
   REQUEST HB_CODEPAGE_PTISO
   HB_SETCODEPAGE("PTISO")
   HB_LANGSELECT("PT")
   request hb_codepage_gbk
   REQUEST HB_GT_WIN_DEFAULT
   SET CODEPAGE TO PORTUGUESE
   SET LANGUAGE TO PORTUGUESE       
   SET CODEPAGE TO UNICODE
   SET CENTURY ON
   SET DATE BRITISH
   SET CENTURY ON
   SET TOOLTIPSTYLE BALLOON
   SET WRAP ON
   SET interactiveclose on
    SET multiple off warning
   SET navigation extended
   SET DELIMITERS ON

PUBLIC VAR_TRF:=""
PUBLIC VAR_TRF2:=""
PUBLIC C_DESTINO:=""
PUBLIC C_ORIGEM:=""
public DESCR_DEST:=""
public DESCR_ORIG:=""
public Valor_lanc:=0
public Data_lanc:=Date()

   DEFINE WINDOW Form_1 ;
      AT 0,0 ;
      WIDTH 640 ;
      HEIGHT 480 ;
      TITLE 'TreeView Sample' ;
      MAIN
      ON KEY ESCAPE ACTION ThisWindow.Release() 
      DEFINE MAIN MENU
        POPUP '&File'
            ITEM 'Get Tree Value' ACTION MsgInfo( Str ( Form_1.Tree_1.Value ) )
            ITEM 'Set Tree Value' ACTION Form_1.Tree_1.Value := val(inputbox('',''))
            ITEM 'Collapse Item' ACTION Form_1.Tree_1.Collapse ( val(inputbox('','') ) )
            ITEM 'Expand Item' ACTION Form_1.Tree_1.Expand ( val(inputbox('','') ) )
         END POPUP
      END MENU

      DEFINE CONTEXT MENU
         ITEM 'About'            ACTION MsgInfo ("Free GUI Library For Harbour","HMG Tree Demo")
      END MENU

   DEFINE TREE Tree_1 AT 10,10 WIDTH 500 HEIGHT 500 VALUE 2 FONT "ARIAL" SIZE 12 DynamicForeColor WHITE DynamicBackColor YELLOW;
             ON DBLCLICK IF (Form_1.Tree_1.IsExpand (Form_1.Tree_1.Value) == .F. ,;
                         Form_1.Tree_1.Expand (Form_1.Tree_1.Value) ,;
                         Form_1.Tree_1.Collapse (Form_1.Tree_1.Value) );
         
         NODE 'ORIGEM DOS RECURSOS'
            NODE 'Empresa Matriz'
               TREEITEM "CONTA 1"
               TREEITEM "CONTA 2"
            END NODE
            NODE 'Empresa - Filial'
               TREEITEM "CONTA 1"
               TREEITEM "CONTA 2"
            END NODE
         END NODE   
   END TREE

   DEFINE TREE Tree_2 AT 10,550 WIDTH 500 HEIGHT 500 VALUE 6 FONT "ARIAL" SIZE 12 DynamicForeColor WHITE DynamicBackColor YELLOW;
             ON DBLCLICK IF (Form_1.Tree_2.IsExpand (Form_1.Tree_2.Value) == .F. ,;
                         Form_1.Tree_2.Expand (Form_1.Tree_2.Value) ,;
                         Form_1.Tree_2.Collapse (Form_1.Tree_2.Value) );
            
            
         NODE 'DESTINO DOS RECURSOS'
            NODE 'Empresa - Matriz'
               TREEITEM "CONTA 1"
               TREEITEM "CONTA 2"
            END NODE
            NODE 'Empresa - Filial'
               TREEITEM "CONTA 1"
               TREEITEM "CONTA 2"
            END NODE
         END NODE   
   END TREE
   
   DEFINE BUTTON Text_And_Image_Button
        ROW    570
        COL    870
        WIDTH  180
        HEIGHT 50
        ACTION PEGA_DESCR ()
        CAPTION "Avançar"
        FONTNAME "Arial"
        FONTSIZE 9
        TOOLTIP "Avançar"
        FONTBOLD .t.
        FONTITALIC .F.
        FONTUNDERLINE .F.
        FONTSTRIKEOUT .F.
        ONGOTFOCUS Nil
        ONLOSTFOCUS Nil
        HELPID Nil
        FLAT .F.
        TABSTOP .T.
        VISIBLE .T.
        TRANSPARENT .F.
        PICTURE "avanca.BMP"
        PICTALIGNMENT LEFT
    END BUTTON
   
   END WINDOW
   MAXIMIZE WINDOW Form_1
   ACTIVATE WINDOW Form_1
   

   FUNCTION PEGA_DESCR ()
      C_ORIGEM:=( Form_1.Tree_1.Item ( Form_1.Tree_1.Value ) )
      C_DESTINO:=( Form_1.Tree_2.Item ( Form_1.Tree_2.Value ) )
      

      IF EMPTY(C_ORIGEM).OR.C_ORIGEM="ORIGEM DOS RECURSOS"
         ALERT ("ESCOLHER CONTA DE ORIGEM")
         RetuRN
      ENDIF

      IF EMPTY(C_DESTINO).OR.C_DESTINO="DESTINO DOS RECURSOS"
         ALERT ("ESCOLHER CONTA DE DESTINO")
         RetuRN
      ENDIF

      DO CASE   //  INCLUIDO ESSE "CASE", PARA ALTERAR O NOME DAS CONTAS, E GRAVAR NO BD, DENTRO DO LIMITE DE ESPAÇO DO CAMPO
         CASE C_ORIGEM="CONTA 1"
           DESCR_ORIG:="CONTA 1"
         CASE C_ORIGEM="CONTA 2"
           DESCR_ORIG:="CONTA 2"
      ENDCASE

      DO CASE
         CASE C_DESTINO="CONTA 1"
           DESCR_DEST:="CONTA 1"
         CASE C_DESTINO="CONTA 2"
           DESCR_DEST:="CONTA 2"
      ENDCASE
      
      HIST_TRF:="Trf "+DESCR_ORIG+" p/ "+DESCR_DEST

      Abre_window_2()

   FUNCTION Abre_window_2 ()

   DEFINE WINDOW Form_2 ;
   AT 0,0 ;
   WIDTH 1200 HEIGHT 500 ;
   TITLE "HMG Demo" ;
   CHILD ;
   FONT "Arial" SIZE 10 BACKCOLOR YELLOW
   ON KEY ESCAPE ACTION ThisWindow.Release() 
     
      DEFINE LABEL Label_1
      ROW    10
      COL    100
      WIDTH  700
      HEIGHT 60
      VALUE upper("Lancamento de transferencia")
      FONTNAME "Arial"
      FONTSIZE 18
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .F.
      BACKCOLOR YELLOW
      FONTCOLOR Nil //{160,82,45}
      END LABEL
   
      DEFINE LABEL Label_2
      ROW    80
      COL    40
      WIDTH  100
      HEIGHT 53
      VALUE upper("O Dinheiro sai da conta:")
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .t.
      BACKCOLOR YELLOW
      FONTCOLOR {0,0,0}
      END LABEL

      DEFINE LABEL Label_3
      ROW    80
      COL    220
      WIDTH  500
      HEIGHT 24
      VALUE alltrim(C_ORIGEM)
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .f.
      BACKCOLOR YELLOW
      FONTCOLOR {0,0,205}
      END LABEL
   
      DEFINE LABEL Label_4
      ROW    120
      COL    40
      WIDTH  100
      HEIGHT 53
      VALUE upper("O Dinheiro VAI PARA A  conta:")
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .t.
      BACKCOLOR YELLOW
      FONTCOLOR {0,0,0}
      END LABEL

      DEFINE LABEL Label_5
      ROW    120
      COL    260
      WIDTH  500
      HEIGHT 24
      VALUE alltrim(C_DESTINO)
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .f.
      BACKCOLOR YELLOW
      FONTCOLOR {0,0,205}
      END LABEL
   
      DEFINE LABEL Label_6
      ROW    170
      COL    40
      WIDTH  50
      HEIGHT 24
      VALUE "DATA DO LANÇAMENTO: "
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .t.
      BACKCOLOR YELLOW
      FONTCOLOR {0,0,205}
      END LABEL
      
      DEFINE LABEL Label_7
      ROW    200
      COL    40
      WIDTH  50
      HEIGHT 24
      VALUE "VALOR DA TRANSFERENCIA: "
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .t.
      BACKCOLOR YELLOW
      FONTCOLOR {0,0,205}
      END LABEL

      DEFINE LABEL Label_8
      ROW    230
      COL    40
      WIDTH  300
      HEIGHT 24
      VALUE "HISTORICO: "
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .t.
      BACKCOLOR YELLOW
      FONTCOLOR {0,0,205}
      END LABEL

      DEFINE LABEL Label_9
      ROW    270
      COL    40
      WIDTH  300
      HEIGHT 24
      VALUE "OBSERVACAO: "
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      HELPID Nil
      VISIBLE .T.
      TRANSPARENT .F.
      ACTION Nil
      AUTOSIZE .t.
      BACKCOLOR YELLOW
      FONTCOLOR {0,0,205}
      END LABEL

   
      DEFINE TEXTBOX Text_1
      ROW    170
      COL    260
      WIDTH  120
      HEIGHT 24
      FONTNAME "Arial"
      FONTSIZE 10
      TOOLTIP ""
      ONCHANGE Nil
      ONGOTFOCUS Nil
      ONLOSTFOCUS Nil
      FONTBOLD .F.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      ONENTER Nil
      HELPID Nil
      TABSTOP .T.
      VISIBLE .T.
      READONLY .F.
      RIGHTALIGN .F.
      BACKCOLOR NIL
      FONTCOLOR NIL
      INPUTMASK Nil
      FORMAT Nil
      DATE .T.
      VALUE DATE() //ctod('01/01/01')
      END TEXTBOX

      DEFINE TEXTBOX Text_2
      ROW    200
      COL    260
      WIDTH  120
      HEIGHT 24
      FONTNAME "Arial"
      FONTSIZE 9
      TOOLTIP ""
      ONCHANGE Nil
      ONGOTFOCUS Nil
      ONLOSTFOCUS Nil
      FONTBOLD .F.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      ONENTER Nil
      HELPID Nil
      TABSTOP .T.
      VISIBLE .T.
      READONLY .F.
      RIGHTALIGN .F.
      BACKCOLOR NIL
      FONTCOLOR NIL
      INPUTMASK Nil
      FORMAT Nil
      NUMERIC .T.
      VALUE 100
      INPUTMASK '999,999,999.99'   //'@E 999,999,999.99'
      END TEXTBOX

   

      DEFINE TEXTBOX Text_3
      ROW    230
      COL    260
      WIDTH  500
      HEIGHT 24
      MaxLength=40
      FONTNAME "Arial"
      FONTSIZE 9
      TOOLTIP ""
      ONCHANGE Nil
      ONGOTFOCUS Nil
      ONLOSTFOCUS Nil
      FONTBOLD .F.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      ONENTER Nil
      HELPID Nil
      TABSTOP .T.
      VISIBLE .T.
      READONLY .T.
      RIGHTALIGN .F.
      BACKCOLOR {0,0,255}
      FONTCOLOR NIL
      FORMAT Nil
      VALUE HIST_TRF
      END TEXTBOX

      DEFINE TEXTBOX Text_4
      ROW 270
      COL 360
      WIDTH  150
      HEIGHT 20
      FONTNAME "Arial"
      FONTSIZE 9
      TOOLTIP ""
      ONCHANGE Nil
      ONGOTFOCUS Nil
      ONLOSTFOCUS Nil
      FONTBOLD .F.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      ONENTER Nil
      HELPID Nil
      TABSTOP .f.
      VISIBLE .T.
      READONLY .F.
      RIGHTALIGN .F.
      BACKCOLOR NIL
      FONTCOLOR NIL
      INPUTMASK Nil
      VALUE "ATÉ 20 CARACTERES"
      MAXLENGTH 20
      PARENT Form_2
      END TEXTBOX

      DEFINE BUTTON Text_And_Image_Button
      ROW    300
      COL    260
      WIDTH  180
      HEIGHT 50
      ACTION SALVAR_LANC()
      CAPTION "Salvar Lançamento"
      FONTNAME "Arial"
      FONTSIZE 9
      TOOLTIP "Salvar Lançamento"
      FONTBOLD .t.
      FONTITALIC .F.
      FONTUNDERLINE .F.
      FONTSTRIKEOUT .F.
      ONGOTFOCUS Nil
      ONLOSTFOCUS Nil
      HELPID Nil
      FLAT .F.
      TABSTOP .T.
      VISIBLE .T.
      TRANSPARENT .F.
      PICTURE "SAVE.BMP"
      PICTALIGNMENT LEFT
      END BUTTON   

   END WINDOW
   ACTIVATE WINDOW FORM_2
   Form_1.Tree_1.SetFocus

RETURN Nil

FUNCTION SALVAR_LANC()
   
      VAR_TRF:=GetProperty( "Form_2", "Text_4", "VALUE") 

      IF VAR_TRF="ATÉ 20 CARACTERES"
        VAR_TRF:=""
      ELSE
        VAR_TRF:=GetProperty( "Form_2", "Text_4", "VALUE")
      ENDIF

      Valor_lanc:=GetProperty( "Form_2", "Text_2", "VALUE")
      Data_lanc :=GetProperty( "Form_2", "Text_1", "VALUE")

set printer on
set printer to k.txt
? Data_lanc
? VAR_TRF
? Valor_lanc
? HIST_TRF
? C_ORIGEM
? C_DESTINO
return
Max
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 14
Data de registro: 13 Jan 2021 22:15
Cidade/Estado: volta redonda rj
Curtiu: 3 vezes
Mens.Curtidas: 0 vez

TEXT BOX DE JANELA CHILD OU MODAL

Mensagempor marcosLP » 30 Nov 2021 22:15

deixa ver se eu entendi direito.
(ps: que mal tem alguém que saiba do problema ajudar um irmão que veio jsutamente aqui para obter ajuda?)

este membro fez esta pergunta:
(uma pena não poder dar print)

endereço da página:? Página Principal ‹ Bibliotecas Visuais e IDEs ‹ MiniGui -<<<<

titulo da pergunta: TEXT BOX DE JANELA CHILD OU MODAL

resposta malcriada do moderador:
Toledo e administradores favo faze o seugint:
muda o topico desse lugar pra minigui;
coloca as tag code/code no codigo do autor
Nota de Moderação:
Jairo Maia: O presente tópico foi movido da seção Harbour, uma vez que seu conteúdo não tem relação com os objetivos daquela seção, onde só podem constar dúvidas técnicas de programação diretamente relacionadas com o [x]Harbour.

Mensagempor Max » 14 Nov 2021 14:11
Estou com uma dúvida, relacionada a uma questão DO TEXTBOX:

Tenho um programa que abre a janela principal (main), a partir dos dados digitados no (main), ele abre a segunda janela (child). No entanto, ao tentar gravar o conteudo do textbox da 2a janela, o sistema dá erro na execução, com o seguinte alerta: "Control: Text_4 Of Form_2 Not defined. Program Terminated."

Ou seja, por se tratar de uma janela filha, o sistema não está deixando eu gravar numa variável, o conteudo digitado no campo text_4.
Alguem poderia me ajudar, por favor?

Eu utilizo o HMG-IDE 1.2a.
Mensagempor syslink » 14 Nov 2021 15:07

Então....se vão tentar me repreender por postar isso que seja ué...sobrevivemos tanto sem vcs todos esses anos, somos antes de tudo ex-clipeiros e evoluimos já vcs....
Avatar de usuário

marcosLP
Usuário Nível 1

Usuário Nível 1
 
Mensagens: 35
Data de registro: 13 Nov 2020 10:24
Cidade/Estado: guarpauava/pr
Curtiu: 41 vezes
Mens.Curtidas: 4 vezes

Anterior



Retornar para MiniGui

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 6 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