Página 1 de 1

Programar usando hwgui e gtwvw juntas

Enviado: 08 Nov 2011 10:59
por ciacpd
Olá Pessoal,

Estou com dificuldade em compilar hwgui junto com gtwvw, quando o programa executa uma janela da hwgui ao retornar para gtwvw ele congela e só ctrl+alt+del para fecha-lo.

O que preciso é fazer funcionar tela texto com tela gráfica no mesmo EXE.

Algum Amigo teria um bat de compilação para eu dar uma olhada na organização das libs

function main() -->> gtwvw

function filhas() -->> algumas em hwgui outras gtwvw

Daniel Segura
daniel_segura@ig.com.br
ciacpd@hotmail.com

Programar usando hwgui e gtwvw juntas

Enviado: 08 Nov 2011 11:08
por anacatacombs
Olá Daniel.
Não creio que seja problemas com o script de compilação, pois o sistema está compilando normal.
Eu uso o sistema exatamente desse jeito que você postou...
A janela MAIN() em gtwvw e algumas em hwgui e outras e gtwvw..
poste como você cria as janelas em gtwvw e como você tenta criar em hwgui.

[]'s

Ana

Programar usando hwgui e gtwvw juntas

Enviado: 08 Nov 2011 12:43
por sygecom
Olá Daniel,

Post como está compilando ? o que usa para compilar

Programar usando hwgui e gtwvw juntas

Enviado: 08 Nov 2011 13:21
por ciacpd
Ana, assim que possível irei colocar a function main para vc ver

Leonardo, abaixo o final do bat de compilação, o problema deve ser na function main, como ela foi montada para compilar em windows e linux é muito complexa. deve ser necessario fazer uma para cada ambiente.

Se alguem tiver um pequeno exemplo de function main com gtwvw chamando uma function em hwgui e disponibilizar ja ajudaria muito

.obj....
echo pdf.obj, + >>b32.bc

if "%1" == "" echo sistxt.exe, + >> b32.bc
if "%1" == "/w" echo siswin.exe, + >> b32.bc
if "%1" == "/W" echo siswin.exe, + >> b32.bc
if "%1" == "/c" echo sistxt.exe, + >> b32.bc
if "%1" == "/C" echo sistxt.exe, + >> b32.bc
echo sistx.map, + >> b32.bc

REM *** ABAIXO, AS BIBLIOTECAS PARA LINKEDICAO... TAMBEM EM FUNCAO DE PARAMETRO 1***

echo \comp\xharbour12\lib\wvwtools.lib + >> b32.bc
echo %HWGUI_INSTALL%\lib\hwgui.lib + >> b32.bc
echo \comp\xharbour12\lib\gtwin.lib + >> b32.bc
echo \comp\xharbour12\lib\gtwvw.lib + >> b32.bc

echo \comp\xharbour12\lib\vm.lib + >> b32.bc
echo \comp\xharbour12\lib\rtl.lib + >> b32.bc
echo \comp\xharbour12\lib\lang.lib + >> b32.bc
echo \comp\xharbour12\lib\macro.lib + >> b32.bc
echo \comp\xharbour12\lib\pp.lib + >> b32.bc
echo \comp\xharbour12\lib\common.lib + >> b32.bc

echo \comp\xharbour12\lib\rdd.lib + >> b32.bc
echo \comp\xharbour12\lib\ace32.lib + >> b32.bc
echo \comp\xharbour12\lib\dbfcdx.lib + >> b32.bc
echo \comp\xharbour12\lib\dbffpt.lib + >> b32.bc
echo \comp\xharbour12\lib\debug.lib + >> b32.bc
echo \comp\xharbour12\lib\pcrepos.lib + >> b32.bc
echo \comp\xharbour12\lib\hsx.lib + >> b32.bc
echo \comp\xharbour12\lib\hbsix.lib + >> b32.bc
echo \comp\xharbour12\lib\ct.lib + >> b32.bc
echo \comp\xharbour12\lib\codepage.lib + >> b32.bc

rem abaixo libs do fivewin
rem echo %fwh_dir%\lib\FiveHx.lib %fwh_dir%\lib\FiveHC.lib + >> b32.bc

echo %bcc_dir%\lib\cw32.lib + >> b32.bc
echo %bcc_dir%\lib\import32.lib + >> b32.bc
echo %bcc_dir%\Lib\PSDK\odbc32.lib + >>b32.bc

echo %med_DIR%\lib\build1210\b32\medntx.lib + >> b32.bc
echo %med_DIR%\lib\build1210\b32\medntxmt.lib + >> b32.bc
echo %med_DIR%\lib\build1210\b32\cmnnet32.lib, >> b32.bc

REM *** "JOGANDO" ARQUIVO DE RECURSOS PARA LINKEDICAO .EXE... ***
echo sist.res + >> b32.bc
echo hwgui_xp.res >> b32.bc

echo .. criando .exe ...
REM *** MONTAGEM FINAL DO .EXE A PARTIR DOS .OBJ, .LIB E .RC ATRAVES DO ILINK32 ***
if "%1" == "/C" %bcc_dir%\bin\ilink32 -Gn -s -ap -Tpe @b32.bc > linkdsf.log
if "%1" == "/c" %bcc_dir%\bin\ilink32 -Gn -s -ap -Tpe @b32.bc > linkdsf.log
if "%1" == "" %bcc_dir%\bin\ilink32 -Gn -aa -Tpe @b32.bc > linkdsf.log
if "%1" == "/w" %bcc_dir%\bin\ilink32 -Gn -aa -Tpe @b32.bc > linkdsf.log
if "%1" == "/W" %bcc_dir%\bin\ilink32 -Gn -aa -Tpe @b32.bc > linkdsf.log

Programar usando hwgui e gtwvw juntas

Enviado: 08 Nov 2011 13:41
por anacatacombs

Código: Selecionar todos

#include "HWGUI.CH" 
INIT DIALOG oDlg TITLE "Título da janela" AT 305,145 SIZE 598,512 STYLE WS_POPUP + WS_CAPTION + DS_CENTER + WS_SYSMENU + WS_SIZEBOX CLIPPER NOEXIT
     SETCOLORINFOCUS(.T.)     
    /*
    conteudo da janela.. says/gets/botões e piriri pororo...
   */

ACTIVATE DIALOG oDlg 
Essa janela foi criada pelo designer...é uma ótima ferramenta para pessoas como eu, que tem dificuldade de fazer telas bonitas.

Programar usando hwgui e gtwvw juntas

Enviado: 08 Nov 2011 16:02
por sygecom
Olá Daniel,

Inverta as posições das LIB para a LIB da HWGUI fica por primeiro na lista, e não use GTWIN.LIB use no lugar dela a GTGUI.LIB

echo %HWGUI_INSTALL%\lib\hwgui.lib + >> b32.bc
echo \comp\xharbour12\lib\wvwtools.lib + >> b32.bc
echo \comp\xharbour12\lib\gtgui.lib + >> b32.bc
echo \comp\xharbour12\lib\gtwvw.lib + >> b32.bc

Programar usando hwgui e gtwvw juntas

Enviado: 08 Nov 2011 16:46
por anacatacombs
Tem razão Leo..
Eu nem me liguei nesse pequeno detalhe O.o

Programar usando hwgui e gtwvw juntas

Enviado: 07 Dez 2011 11:35
por ciacpd
Olá Pessoal,

Valeu pelas dicas, realmente o ordem das lib é que era o problema, mas com a vlib, gtwvt e hwgui que esta no exemplo do Leonardo (Instalador xHarbour 1.2.1 + Hwgui 2.17 + Exemplos ) foi de grande ajuda, e segui com elas.

A informação da Ana sobre usar o designer, também ajudou na criação das dialogs, só falta aprender a usar porque eu dezenho e depois acerto as variaveis manualmente no prg.

Se alguem tiver um tutorial sobre como criar os formularios e inserir os dbfs e variaveis a partir do designer ajudaria muito pois estou gostando um pouco mais da hwgui que realmente é muito boa.