Página 3 de 4
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 23 Set 2010 22:55
por Toledo
Olá Fábio, dê uma olhada no arquivo TESTBROW.PRG que está na pasta \contrib\hbqt\tests.
Abraços,
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 24 Set 2010 09:15
por binho_fasa
Obrigado pelas dicas.
A QT é fantastica, mas exige estudo das opções, principalmente das mais avançadas. Acredito que o Futuro do Harbour passe por ela...
Aproveitando a mensagem, alguém sabe dizer se é possível usar a HbQT para produzir aplicações para o O.S. Symbian? A QT é a "linguagem" oficial para desenvolvimento de soluções para o Symbian.
[]´s
Fabio Souza
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 24 Set 2010 22:20
por clrod
Olá
Até onde eu sei ainda foi feito um teste oficial, mas o a ideia é que possa ser usada no Symbian sim.
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 09 Nov 2010 12:27
por dlemes
Olá pessoal,
Alguém conseguiu fazer rodar no linux

A demoqt.prg rodou normal, ai desenhei uma janela e fui usar o exemplo desse post e não funcionou, veja o erro abaixo.
Código: Selecionar todos
hbmk2 pacientes.prg TFormUI.prg -rebuild
hbmk2: Processing configuration: /usr/local/bin/hbmk.cfg
hbmk2: Compiling Harbour sources...
Harbour 2.0.0 (Rev. 13372)
Copyright (c) 1999-2010, http://www.harbour-project.org/
Compiling 'pacientes.prg'...
Lines 14, Functions/Procedures 1
Generating C source output to '.hbmk/linux/gcc/pacientes.c'... Done.
Compiling 'TFormUI.prg'...
Lines 3173, Functions/Procedures 5
Generating C source output to '.hbmk/linux/gcc/TFormUI.c'... Done.
hbmk2: Compiling...
hbmk2: Linking... pacientes
.hbmk/linux/gcc/TFormUI.o:(.data+0x148): undefined reference to `HB_FUN_QFILE'
.hbmk/linux/gcc/TFormUI.o:(.data+0x168): undefined reference to `HB_FUN_QUILOADER'
.hbmk/linux/gcc/TFormUI.o:(.data+0x198): undefined reference to `HB_FUN_QDIALOG'
.hbmk/linux/gcc/TFormUI.o:(.data+0x238): undefined reference to `HB_FUN_QT_FINDCHILD'
.hbmk/linux/gcc/TFormUI.o:(.data+0x2b8): undefined reference to `HB_FUN_QT_CONNECT_SIGNAL'
collect2: ld returned 1 exit status
hbmk2: Error: Running linker. 1
gcc .hbmk/linux/gcc/pacientes.o .hbmk/linux/gcc/TFormUI.o -Wl,--start-group -lhbcplr -lhbdebug -lgpm -lharbour -Wl,--end-group -opacientes -L/usr/lib/harbour
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 09 Nov 2010 13:15
por Stanis Luksys
Olá,
Olha eu recompilei o Harbour aqui, e pelo que ví mudou toda a estrutura de libs da hbqt. Nem tive tempo ainda de ver o que de fato está diferente.
De qualquer forma, você nem sequer linkou as libs da qt pelo hbmk2. Procure usar os arquivos hbm e hbc da pasta hbqt do contrib que deve resolver. Veja este post logo acima: viewtopic.php?f=43&t=11165#p63524
O exemplo original do post foi compilado em Linux.
Abraços.
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 10 Nov 2010 14:50
por dlemes
Valeu Stanis Luksys,
Compilou certinho, na verdade estou fazendo uns testes com qt-designer, fiz um form simples compilei e ai deu a seguinte mensagem ao rodar.
ao rodar da isso...
Código: Selecionar todos
QPixmap: Must construct a QApplication before a QPaintDevice
Abortado
Se souber o que é...
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 10 Nov 2010 20:20
por Stanis Luksys
Então...
Você está instanciando a QApplication() numa var pública ou estática igual eu passei lá na primeira postagem? Deve ser isso o problema.
Seguindo esta linha., seu prg principal deve ter basicamente esta estrutura:
Código: Selecionar todos
STATIC qApp
PROCEDURE MAIN()
qApp := QApplication()
// AQUI VAI TODO O PROGRAMA
qApp:exec()
qApp:quit()
RETURN
Tenta e ve aí se funciona...
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 11 Nov 2010 18:35
por dlemes
OPa valeu Stanis,
funcionou tudo certinho, só não consigo conectar os sinais...
tentei assim
oFormUi:evento( "oFormUi:bntSalvar", "clicked()", {|| MsgInfo("Clicou no botão salvar") } )
oFormUi:evento( "bntSalvar", "clicked()", {|| MsgInfo("Clicou no botão salvar") } )
Qt_Connect_Signal( "bntSalvar", "clicked()", {|| MsgInfo("Clicou no botão salvar") } )
Nenhum dos métodos funcionou....
Tem que fazer algo no designer

ou é só criar o botão mesmo ?? eu criei o botão e coloquei o nome dele bntSalvar
Obrigado.
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 11 Nov 2010 19:08
por Stanis Luksys
Opa, tente sem as aspas, algo assim:
Código: Selecionar todos
oFormUi:evento( oFormUi:bntSalvar, "clicked()", {|| MsgInfo("Clicou no botão salvar") } )
Mas precisa criar a função msgInfo também.
Aliás, aguarde até hoje de noite que coloco aqui a classe já aprimorada, pois esta que está publicada neste topico foi apenas um primeiro teste. Agora já está mais completinha, inclusive com algumas adaptações pra versão mais recente da HBQT, que já conta com muito mais objetos.
Agora deixa eu te dizer... Neste mesmo fórum eu coloquei uma função pra previsão do tempo, e estava fazendo uns testes com a HBQT e coloquei a imagem da previsão da climatempo no cantinho direito da janela do programa, além de relógio analógico e calendário... Ficou show de bola, autênticos widgets! Essas coisas sempre incrementam o sistema... rs
Abraços!
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 11 Nov 2010 21:54
por fabianocsilva
Ola Stanis!
Parabéns pelo Tutorial!!
Conseguiu compilar os testes, tudo funcionando, mas ainda não consegui conectar ao botão. Se puderes colocar um exemplo de conexão com botão agradeço.
Abraços.
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 12 Nov 2010 03:27
por Stanis Luksys
Opa,
No momento, acho que a melhor forma de conectar os sinais seria assim:
Código: Selecionar todos
oFormUI:btnSalvar:Connect("clicked()", {|| SuaFuncao() } )
Eu estou usando assim.
Abraços
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 13 Nov 2010 01:14
por fabianocsilva
Ola Pessoal!
Abaixo vai um exemplo que eu montei para exercitar a HBQT, conectando um botão, agora falta um exemplo com a QT-Designer, Chegamos lá.
Abraços!
Código: Selecionar todos
#include "hbqt.ch"
STATIC qApp
REQUEST HB_QT
INIT PROCEDURE Qt_Start()
qApp := QApplication():new()
RETURN
EXIT PROCEDURE Qt_End()
qApp:quit()
RETURN
PROCEDURE Main()
LOCAL oMinhaJanela, oBtn
oMinhaJanela := QMainWindow():new()
oMinhaJanela:show()
oMinhaJanela:setWindowTitle( "Teste Harbour-Qt" )
oMinhaJanela:setWindowIcon( "test" )
oMinhaJanela:resize( 900, 500 )
oMinhaJanela:setCentralWidget(QWidget(oMinhaJanela))
oBtn := QPushButton():new(oMinhaJanela)
oBtn:setText( "Clique")
oBtn:move( 30,240 )
oBtn:resize( 100,50 )
oBtn:show()
Qt_Connect_Signal( oBtn, "clicked()", {|| MsgInfo( "Botão Clicado")} )
qApp:exec()
xReleaseMemory( { oBtn, oMinhaJanela } )
RETURN
STATIC FUNCTION MsgInfo( cMsg )
LOCAL oBox
oBox:= QMessageBox():new()
oBox:setInformativeText( cMsg )
oBox:setWindowTitle( "Informação!" )
oBox:exec()
oBox := NIL
HB_GCALL( .T.)
RETURN Nil
FUNCTION xReleaseMemory( aObj )
LOCAL i
FOR i := 1 TO len( aObj )
IF hb_isObject( aObj[ i ] )
aObj[ i ] := NIL
ELSEIF hb_isArray( aObj[ i ] )
xReleaseMemory( aObj[ i ] )
ENDIF
NEXT
RETURN nil
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 13 Nov 2010 14:21
por Stanis Luksys
Olá,
Qual versão do Harbour você está usando? Qual versão da QT? Windows ou Linux?
Eu acabei de colocar um exemplo acima do seu que funciona perfeitamente usando a QtDesigner com a TFormUi. Acontece que mudaram um monte de coisas na hbqt. tem função que nem existe mais ou mudou de nome! Essa função Qt_Connect_Signal() que você usou é uma que sumiu do mapa na última versão.
Alem disso a classe QUiLoader parece não funcionar no WIndows 7 de jeito nenhum, só no Linux..
Abraços!
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 13 Nov 2010 18:37
por fabianocsilva
Ola!
Estou usando a hbqt da versão do harbour 2.0 com Ubuntu 10.04, vou fazer assim, vou compilar a ultima versão desenvolvida da hbqt e usar o teu exemplo, usando a TFormUI.
Abraços.
Re: TUTORIAL: Harbour com QT-Designer. Uma combinação perfeita!
Enviado: 13 Nov 2010 19:01
por Stanis Luksys
Olá,
Acabo de fazer o upload de um bom exemplo de uso da Qt-Designer + hbqt + TFormUi, daqui 15 minutos, vou jogar lá a versão para Linux, que foi onde originalmente eu desenvolvi.
Vê lá:
http://sites.google.com/site/hblibs/exe ... e-com-hbqt
Abraços.