Necesito ayuda con el use de gtwvg

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Ruben Dario
Usuário Nível 3
Usuário Nível 3
Mensagens: 127
Registrado em: 14 Jun 2015 23:19
Localização: Colombia

Necesito ayuda con el use de gtwvg

Mensagem por Ruben Dario »

Saludos
Como le cambio el fondo por un color especifico a WvtDialog

Código: Selecionar todos


          WITH OBJECT ::oCrt :=  WvtDialog():New( 30, 90, "My Dialog Two" )
           :nTooltipWidth     := 300
           :nTooltipTextColor := RGB( 255,0,0 )    
           :Create()
         ENDWITH  

Ruben Dario
Usuário Nível 3
Usuário Nível 3
Mensagens: 127
Registrado em: 14 Jun 2015 23:19
Localização: Colombia

Necesito ayuda con el use de gtwvg

Mensagem por Ruben Dario »

Saludos

Deacuerdo a tu ejemplo Test.

Estoy aumentado y Botton para grabar. Le estoy asignanco la letra G.
el problema que tengo cuando se le da grabar captura la letra G en el GET como controlo que no le captura y ejecute el botton.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Necesito ayuda con el use de gtwvg

Mensagem por JoséQuintas »

Ruben Dario escreveu:Estoy aumentado y Botton para grabar. Le estoy asignanco la letra G.
el problema que tengo cuando se le da grabar captura la letra G en el GET como controlo que no le captura y ejecute el botton.

Código: Selecionar todos

#include "inkey.ch"

PROCEDURE Main

   LOCAL a := 10, b := 10, c := 10, d := 10, GetList := {}
   LOCAL cmdWrite, cmdCancel

   SetMode( 40, 100 )
   SetColor( "W/B" )
   CLS
   cmdWrite := wvgPushButton():New()
   WITH OBJECT cmdWrite
      :Caption := "Gravar"
      :Activate := BlockKeyboard( K_CTRL_W )
      :PointerFocus := .F.
      :Create( ,, { -1, -1 }, { -3, -6 } )
   ENDWITH
   cmdCancel := wvgPushButton():New()
   WITH OBJECT cmdCancel
      :Caption := "Cancelar"
      :Activate := BlockKeyboard( K_ESC )
      :PointerFocus := .F.
      :Create( ,, { -1, -7 }, { -3, -6 } )
   ENDWITH

   DO WHILE .T.
      @  5, 1 SAY "Any 1:" GET a
      @  7, 1 SAY "Any 2:" GET b
      @  9, 1 SAY "Any 3:" GET c
      @ 11, 1 SAY "Any 4:" GET d
      READ
      DO CASE
      CASE LastKey() == K_ESC
         @ 15, 1 SAY "END  " COLOR "N/W"
         Inkey(5)
         EXIT
      CASE LastKey() == K_CTRL_W
         @ 15, 1 SAY "WRITE"  COLOR "N/W"
         Inkey(5)
         @ 15, 1
      ENDCASE
   ENDDO

   RETURN

FUNCTION BlockKeyboard( nKey )

   RETURN { || hb_KeyPut( nKey ) }
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"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 do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Necesito ayuda con el use de gtwvg

Mensagem por JoséQuintas »

Só comentário:

Ao colocar no button pra fazer um Keyboard, no fonte pode continuar como antes.
Pode num tbrowse criar buttons pra fazer K_UP, K_DOWN, K_PGUP, K_PGDN, K_HOME, K_END, K_ESC e usar a mesma rotina de tbrowse pra teclado, apenas adiciona os buttons pra fazer hb_KeyPut().
A vantagem é que vai funcionar por teclado ou por clique de mouse, o usuário usa como quiser.
browse.png
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Ruben Dario
Usuário Nível 3
Usuário Nível 3
Mensagens: 127
Registrado em: 14 Jun 2015 23:19
Localização: Colombia

Necesito ayuda con el use de gtwvg

Mensagem por Ruben Dario »

Saludos
Con base a tu ejemplo test.
como se puede contralar que inicie la pantalla Maximizada.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Necesito ayuda con el use de gtwvg

Mensagem por JoséQuintas »

Deixo por conta do usuário escolher o tamanho.

Se não me engano usam wvt_Maximize(.t.)

ou hb_gtInfo( HB_GTI_MAXIMIZE, .T. ) ou algo assim ou HB_GT_FULLSCREEN.
No arquivo hbgtinfo.ch vai encontrar os nomes a serem usados.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Ruben Dario
Usuário Nível 3
Usuário Nível 3
Mensagens: 127
Registrado em: 14 Jun 2015 23:19
Localização: Colombia

Necesito ayuda con el use de gtwvg

Mensagem por Ruben Dario »

Gracias Maestro me Funciono
Ruben Dario
Usuário Nível 3
Usuário Nível 3
Mensagens: 127
Registrado em: 14 Jun 2015 23:19
Localização: Colombia

Necesito ayuda con el use de gtwvg

Mensagem por Ruben Dario »

Saludos
Te cuento que no he podido resolver que cuando uso WvgCrt(), se sale del sistema.

Este Problema lo tengo con WvgCrt(), cuando uso el WvtDialog() si funciona.
la Idea es que me regrese al menu Principal.

El Problema con WvtDialog() si me funciona, es como controlo que no me limpie la pantalla, quiero que me coloque la ejecucion del WvtDialog() sin limpiar deacuerdo a la imagen

Este es el metodo para salir de la opcion y me deberia retornar al menu principal.

Código: Selecionar todos

Asi uso WvtDialog()
          WITH OBJECT ::oCrt :=  WvtDialog():New(kb1, kb2, ::cSistema, "Courier New", ) 
           :nTooltipWidth     := 300
           :nTooltipTextColor := RGB(  16,  16,  16 )   //RGB( 255,0,0 ) 
           :Create() 
         ENDWITH  

Asi uso WvgCrt()
     WITH OBJECT ::oCrt := WvgCrt():New(,, { ka1,ka2 }, { kb1,kb2 },, .t. ) 
              :lModal     := .T.
              :fontName   := "Courier" 
              :fontHeight := 13
              :fontWidth  := 0
              :Title      := ::cSistema
              :icon       := 'icojpa.Ico'
              :ReSizable  := .F.
              :Closable   := .F. 
              :create()  
           ENDWITH     
            CLS  
  

METHOD lsalir() CLASS TApp01
   ::aContl[1] := 0 ; ::aContl[2] := 0
    ::CTLFIN := 1
    ::GUIDestroy()
    ::oCrt:Destroy() 
     alert("Salida ")
   ::CLOSE()
RETURN self

https://www.4shared.com/photo/OocUoM5yi ... lla_0.html
Editado pela última vez por Itamar M. Lins Jr. em 07 Fev 2020 21:04, em um total de 1 vez.
Razão: Pequena correção na tag [code] .prg [/code] tava [code .prg ][/code]
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Necesito ayuda con el use de gtwvg

Mensagem por JoséQuintas »

Gostaria de ver um exemplo de como está usando a wvtDialog(), pra tentar entender qual é o problema.
Não uso, então no momento não faço idéia do funcionamento prático.
Pelo que imagino, não dá pra usar Dialog numa crt, e sim uma crt numa dialog.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Ruben Dario
Usuário Nível 3
Usuário Nível 3
Mensagens: 127
Registrado em: 14 Jun 2015 23:19
Localização: Colombia

Necesito ayuda con el use de gtwvg

Mensagem por Ruben Dario »

asi Uso WvtDialog()

El Problema con WvtDialog() si me funciona y me retorna al menu principal.
El problema, es como controlo que no me limpie la pantalla, quiero que me coloque la ejecucion del WvtDialog() sin limpiar de acuerdo a la imagen
o sea que me coloque la ejecucion WvtDialog encima de menu principal.
Asi como ilustre en la imagenes.
He revisado tu codigo de JoseQuintas-master pero no manejas estos recursos. no se si vi mal. esto es posible costruir el .exe para ver las pantallas.

Gracias por todo.

Código: Selecionar todos

METHOD FORM_CAPT(ME1,ME2,ME3,ME4,ME5,ME6,opr,cnt,a1,a2,b1,b2,o1,o2,p1,p2) CLASS TApp01
          WITH OBJECT ::oCrt :=  WvtDialog():New(kb1, kb2, ::cSistema, "Courier New", ) 
           :nTooltipWidth     := 300
           :nTooltipTextColor := RGB(  16,  16,  16 )  
           :Create() 
         ENDWITH  

RETURN self


METHOD lsalir() CLASS TApp01
   ::aContl[1] := 0 ; ::aContl[2] := 0
    ::CTLFIN := 1
    ::GUIDestroy()
    ::oCrt:Destroy() 
     alert("Salida ")
   ::CLOSE()
RETURN self

Pantalla UsandoWvtDialog
https://www.4shared.com/photo/l-HnKgFEe ... ialog.html

Pantalla Usando WvgCrt
https://www.4shared.com/photo/_WWNrQLzi ... vgCrt.html
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Necesito ayuda con el use de gtwvg

Mensagem por JoséQuintas »

Vou fazer testes.
Talvez você tenha descoberto algo que eu estava procurando.
Ou talvez nem esteja usando a Dialog.

Se quiser usar multithread, talvez facilite, mas tem que esquecer variáveis públicas.
Em multithread, o módulo se comporta como um EXE em separado, e tem sua própria janela.

Código: Selecionar todos

#include "inkey.ch"

PROCEDURE Main

   hb_ThreadStart( { || Test1() } )
   hb_ThreadStart( { || Test1() } )
   hb_ThreadStart( { || Test1() } )
   hb_ThreadStart( { || Test1() } )
   hb_ThreadWaitForAll()

   RETURN

FUNCTION Test1()

   hb_gtReload( "WVG")
   SetMode( 25, 80 )
   CLS
   ? "This is a Thread"
   Inkey(0)

   RETURN NIL

PROCEDURE HB_GTSYS

   REQUEST HB_GT_WVG_DEFAULT

   RETURN
hbmk2 test -mt gtwvg.hbc

Importante:
O módulo principal fica escondido, vai se manter enquanto houver thread em execução.
Dependendo do que acontecer no módulo, o programa pode ficar como um processo no Windows, sem janela, e precisar ser fechado pelo gerenciador de tarefas.

TALVEZ você esteja usando essa mesma janela, e não uma Dialog.
multithread.png
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Ramos
Usuário Nível 1
Usuário Nível 1
Mensagens: 9
Registrado em: 15 Ago 2014 17:38
Localização: GV/MG

Necesito ayuda con el use de gtwvg

Mensagem por Ramos »

Boa tarde,
Usando o exemplo DEMOXBP, com GTWVG, também necessito de uma ajuda com o seguinte:
1) Ao APLICAR ir para uma função com o radiobutton selecionado(são usados 4 radiobutt) e as variáveis digitadas(3 variáveis)
2) Na funcção Calculos, faria algumas operações e de acordo com o radiobutt ia atualizar o Memoread().
3) Em um dos botões, preciso configurar o diretório com os arquivos. Isso ficaria em um DBF. Exemplo. Arquivo PARAMETRO - Nome01 -C 20
Tentei fazer mas, não mostra o SAY e nem o GET.

Exemplos

Código: Selecionar todos

   oXbp := WvgPushButton():new( oStatic2 )
   oXbp:caption := "Aplicar"
   oXbp:create( , , { 830, 520 }, { 60, 25 } )
   oXbp:activate := {||  CALCULOS(cVarA,cVarB,cVarC,cR1,cR2,cR3,cR4) , oCrt:sendMessage( WM_SIZE, 0, 0 ) }
   
   oRadio  := WvgRadioButton():new( oStatic2, , { 10, 10 }, { 130, 15 } )
   oRadio:caption   := "Sequência Fibonacci"
   oRadio:selection := .T.
   oRadio:selected  := {| cR1, obj | cR1 := cR1,  Wvg_MessageBox( , obj:caption + iif( obj:selection, "< S >", "< N >" ) ) }
   oRadio:create()
 
  // Create first SLE, specify position using :create()
   // On :typeOut set the focus to the second SLE
   oXbp                := WvgSLE():new()
   oXbp:autoTab        := .T.
   oXbp:bufferLength   := 15
   // Data code block containing assignment to LOCAL variable
   oXbp:dataLink       := {| x | iif( x == NIL, cVarA, cVarA := x ) }
   oXbp:create( oStatic2, , { 10, 170 }, { 150, 20 } )
   oXbp:setData()
   // Assign the value of the edit buffer to a LOCAL variable when the input focus is lost
   oXbp:killInputFocus := {| x, y, oSLE | x := x, y := y, oSLE:getData(), oPanel:caption := "cVarA =" + cVarA }


FUNCTION CONFIGURA()
********* colocar say e get para atualizar um arquivo de parametros -> campos para personalizar diretorios(pastas)
******** não consigo usar SAY E nem GET

RETURN NIL

STATIC FUNCTION CALCULOS()  // função após usar o botão APLICAR
*** ao escolher radiobutton e aplicar faria uns calculos aqui, criando os arquivos textos de depois
*** queria atualizar o memoread(), pois seria um arquivo com os cálculos
*** Se botão for 1, fazer alguns calculos e  memoread("1.JRC")
*** SE botão for 2, fazer alguns calculos e memoread("2.JRC")
*** não consigo passar a variável, nem o radiobutton, 

RETURN NIL
Se alguém puder ajudar. De qualquer forma estou grato,

Ramos
Anexos
ORGANIZADOR ESTUDOS.png
JRCFI.prg
(16.48 KiB) Baixado 231 vezes
Editado pela última vez por JoséQuintas em 05 Mai 2020 16:35, em um total de 1 vez.
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Necesito ayuda con el use de gtwvg

Mensagem por JoséQuintas »

wvgDialog() é exclusiva pra GUI, não tem tela texto.
Talvez uma wvgCrt() vinculada à dialog, ou label.

Vou fazer testes aqui pra ver o que consigo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Ramos
Usuário Nível 1
Usuário Nível 1
Mensagens: 9
Registrado em: 15 Ago 2014 17:38
Localização: GV/MG

Necesito ayuda con el use de gtwvg

Mensagem por Ramos »

Boa noite!
José usando o que disse, consegui criar WvgCrt()

Código: Selecionar todos

FUNCTION CONFIGURA(oCrt)
Local a1 := 7
Local 	   a2 :=12 
Local 	   b1 := 33
Local 	   b2 := 119
Local  oCrt1
local GetList := {}
SetMode( 33,100)
	   oCrt1 := WvgCrt():New(,, { a1,a2 }, { b1,b2 },, .t. )
	      oCrt1:Title := "Parametros"
	      oCrt1:ReSizable := .T.  // redimensionar
	      oCrt1:Closable := .T.
	      oCrt1:create()
		@ 0,0 get a1
		read
           oCrt1:destroy()
RETURN oCrt
Vou continuar testando. Obrigado.

Ramos
Responder