Página 1 de 2
harbour + qtcontribs
Enviado: 17 Out 2012 14:12
por MARCELOG
Baixe o harbour-nightly-win do endereço abaixo indicado e instale o mesmo na pasta c:\hb32 (padrão).
http://sourceforge.net/projects/harbour ... e/download
Baixe o pacote de contribuição que contém a hbqtgui do endereço abaixo indicado e instale o mesmo na pasta c:\hb32 (padrão).
http://sourceforge.net/projects/qtcontr ... t/download
Baixe o pacote qt-win-opensource para o compilador mingw do endereço abaixo indicado e instale o mesmo na pasta c:\qt\4.8.3 (padrão).
http://releases.qt-project.org/qt4/sour ... -mingw.exe
Ao instalar o pacote qt, na terceira tela vai ser solicitado o local do compilador, devendo ser indicado c:\hb32\comp\mingw.
Vai aparecer um erro relacionado a dll mas não se preocupe, confirme e aguarde a conclusão da instalação.
Feito isso, copie todas as dll´s que estão na pasta c:\hb32\bin para a pasta c:\hb32\addons\hbqt\tests.
Não precisa de todas, mas uma a mais não vai fazer diferença né!!!
Agora, abra uma janela do ms-dos digitando em <EXECUTAR> o comando "command" ou "cmd".
Vá para a pasta c:\hb32\addons\hbqt\tests.
Com o editor de texto, vamos criar um arquivo c.bat com o seguinte conteúdo:
set _path=%path%
set path=c:\hb32\bin;c:\hb32\comp\mingw\bin
set HB_WITH_QT=c:\qt\4.8.3\include
hbmk2 demoqt
demoqt
set path=%_path%
Execute o arquivo digitando "c" e teclando <ENTER>.
Se tudo estiver certo, o arquivo demoqt.exe é criado e executado.
Boa sorte.
MarceloG
Nota de Moderação:por
Pablo César: Mensagem editada para colocar a tag [ URL ]
Coloque sempre as URLs entre tags assim evita que o link seja abreviado.
harbour + qtcontribs
Enviado: 17 Out 2012 14:40
por carlos_dornelas
Marcelo, acho que o pacote 3, referente a mingw, já vem normalmente incluído no harbour noturno.
Antonio Carlos
harbour + qtcontribs
Enviado: 17 Out 2012 14:49
por carlos_dornelas
Estorna! Acho que falei besteira! O que vem junto com o harbour é o compilador mingw.
Antonio Carlos
harbour + qtcontribs
Enviado: 24 Out 2012 21:03
por carlos_dornelas
Marcelo,
Voce jah conseguiu compilar formularios .UI no windows? Se sim, poderia postar um exemplo?
Grato
Antonio Carlos
harbour + qtcontribs
Enviado: 24 Out 2012 21:53
por Imatech
Basta incluir o SeuForm.ui no arquivo de projeto ( *.hbp )
harbour + qtcontribs
Enviado: 25 Out 2012 14:21
por carlos_dornelas
Imatech,
Estou comandando assim: "hbmk2 sample.prg sample.ui", mas sempre dá erro:
Código: Selecionar todos
C:\hb32\addons\hbqt\tutorial>hbmk2 sample.prg sample.ui
hbmk2: Processando script local: hbmk.hbm
Harbour 3.2.0dev (Rev. 18349)
Copyright (c) 1999-2012, http://harbour-project.org/
Compiling 'sample.prg'...
Lines 17, Functions/Procedures 1
Generating C source output to 'C:\Users\AppData\Local\Temp\hbmk_p0vopd.
dir\sample.c'... Done.
Compiling 'C:\Users\AppData\Local\Temp\hbmk_p0vopd.dir\uic_sample.prg'.
..
Lines 3523, Functions/Procedures 4
Generating C source output to 'C:\Users\AppData\Local\Temp\hbmk_p0vopd.
dir\uic_sample.c'... Done.
C:/Users/f0884750/AppData/Local/Temp/hbmk_p0vopd.dir/sample.o:sample.c:(.data+0x
38): undefined reference to `HB_FUN_QUILOADER'
collect2: ld returned 1 exit status
hbmk2: Erro: Executando linkeditor. 1
gcc.exe C:/Users/f0884750/AppData/Local/Temp/hbmk_p0vopd.dir/sample.o C:/Users/f
0884750/AppData/Local/Temp/hbmk_p0vopd.dir/uic_sample.o C:/Users/f0884750/AppDat
a/Local/Temp/hbmk_p0vopd.dir/hbmk_8hkkuw.o C:/Users/f0884750/AppData/Local/Temp/
hbmk_p0vopd.dir/hbmk_d552ja.o -mwindows -Wl,--start-group -lsupc++ -lhbqtcore
-lQtCore4 -lhbqtgui -lQtGui4 -lhbqtnetwork -lQtNetwork4 -lgtqtc -lhbextern -lhb
debug -lhbvm -lhbrtl -lhblang -lhbcpage -lgtcgi -lgtpca -lgtstd -lgtwin -lgtwvt
-lgtgui -lhbrdd -lhbuddall -lhbusrrdd -lrddntx -lrddcdx -lrddnsx -lrddfpt -lhbrd
d -lhbhsx -lhbsix -lhbmacro -lhbcplr -lhbpp -lhbcommon -lhbmainwin -lkernel32 -l
user32 -lgdi32 -ladvapi32 -lws2_32 -lwinspool -lcomctl32 -lcomdlg32 -lshell32 -l
uuid -lole32 -loleaut32 -lmpr -lwinmm -lmapi32 -limm32 -lmsimg32 -lwininet -lhbp
cre -lhbzlib -Wl,--end-group -osample.exe -Lc:/hb32/lib/win/mingw -Lc:/qt/4.8
.3/lib
Fiz a Instalação padrão como indicado pelo Marcelo. O formulário eu gerei pelo Designer, pois não encontrei o QT Creator no pacote.
Meu bat de configuração do ambiente é:
Código: Selecionar todos
set _path=%path%
set path=c:\hb32\bin;c:\hb32\comp\mingw\bin;c:\windows\system32;
set HB_WITH_QT=c:\qt\4.8.3\include
cd\
cd hb32
cd addons
cd hbqt
cd tutorial
O arquivo sample.prg
Código: Selecionar todos
PROCEDURE Main()
LOCAL oWnd, oUi, oFile
oFile := QFile( "sample.UI" )
oFile:open( 1 )
oUi := QUiLoader()
oWnd := oUi:load( oFile )
oFile:close()
oWnd:show()
QApplication():exec()
RETURN
O arquivo sample.ui
Código: Selecionar todos
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Form</class>
<widget class="QWidget" name="Form">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>854</width>
<height>514</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="label">
<property name="palette">
<palette>
<active>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>85</green>
<blue>127</blue>
</color>
</brush>
</colorrole>
</active>
<inactive>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>85</green>
<blue>127</blue>
</color>
</brush>
</colorrole>
</inactive>
<disabled>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>120</red>
<green>120</green>
<blue>120</blue>
</color>
</brush>
</colorrole>
</disabled>
</palette>
</property>
<property name="font">
<font>
<family>Aharoni</family>
<pointsize>16</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="frameShape">
<enum>QFrame::Panel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<property name="lineWidth">
<number>3</number>
</property>
<property name="text">
<string>Teste com formularios</string>
</property>
<property name="scaledContents">
<bool>false</bool>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QCalendarWidget" name="calendarWidget"/>
</item>
<item>
<widget class="QPushButton" name="pushButton">
<property name="text">
<string>Botao 1</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<resources/>
<connections>
<connection>
<sender>pushButton</sender>
<signal>clicked()</signal>
<receiver>pushButton</receiver>
<slot>showFullScreen()</slot>
<hints>
<hint type="sourcelabel">
<x>179</x>
<y>130</y>
</hint>
<hint type="destinationlabel">
<x>188</x>
<y>135</y>
</hint>
</hints>
</connection>
</connections>
</ui>
Utilizo o windows 7.
Onde estarei errando?
Antonio Carlos
harbour + qtcontribs
Enviado: 25 Out 2012 15:04
por Imatech
Olá !
Sem inclucir a lib: hqQT ( hbqt.hbc ) não vai mesmo...
Segue script para compilação ( .hbp ):
Código: Selecionar todos
#
# arquivo hbp
# compilar com hbmk2.exe meuprojeto.hbp
#
#
# Debug
# -b
#
# Flags do compilador
#
-w3
-es2
-kmo
#
# Diretivas para compilação incremental
#
-inc
#
# .obj ( temp ) files
#
-workdir=C:\hb32\Temp
#
# Console/Gui
# -std
# -gui
#
# Metodo de Compressão UPX
#
# -compr=def
#
# Pausa em caso de avisos na compilação
#
-pause
#
# Executar ao finalizar a compilação
#
# -run
#
# gt class
#
# -gtwin
#
# .hbc files ( esta é a melhor forma para se usar lib's addons/extras/contrib )
#
hbqt.hbc
#
#definimos o nome da aplicação
#
-oDemo.exe
#
# .prg files
#
sample.prg
#
# .ui Files
#
sample.ui
#
# .C Files
#
#
# .qrc Files
#
harbour + qtcontribs
Enviado: 25 Out 2012 15:38
por carlos_dornelas
Imatech,
Grato pela sua ajuda, mas criei o arquivo "meuprojeto.hbp" e executei "hbmk2 meuprojeto.hbp" e novamente deu o erro:
Código: Selecionar todos
C:\hb32\addons\hbqt\tutorial>hbmk2 meuprojeto.hbp
hbmk2: Processando script local: hbmk.hbm
hbmk2: Linkando... Demo.exe
C:/hb32/Temp/sample.o:sample.c:(.data+0x38): undefined reference to `HB_FUN_QUIL
OADER'
collect2: ld returned 1 exit status
hbmk2: Erro: Executando linkeditor. 1
gcc.exe C:/hb32/Temp/sample.o C:/hb32/Temp/uic_sample.o C:/hb32/Temp/_hbmkaut_sa
mple.o C:/hb32/Temp/_hbmkcpp_sample.o -mwindows -Wl,--start-group -lsupc++ -l
hbqtcore -lQtCore4 -lhbqtgui -lQtGui4 -lhbqtnetwork -lQtNetwork4 -lgtqtc -lhbext
ern -lhbdebug -lhbvm -lhbrtl -lhblang -lhbcpage -lgtcgi -lgtpca -lgtstd -lgtwin
-lgtwvt -lgtgui -lhbrdd -lhbuddall -lhbusrrdd -lrddntx -lrddcdx -lrddnsx -lrddfp
t -lhbrdd -lhbhsx -lhbsix -lhbmacro -lhbcplr -lhbpp -lhbcommon -lhbmainwin -lker
nel32 -luser32 -lgdi32 -ladvapi32 -lws2_32 -lwinspool -lcomctl32 -lcomdlg32 -lsh
ell32 -luuid -lole32 -loleaut32 -lmpr -lwinmm -lmapi32 -limm32 -lmsimg32 -lwinin
et -lhbpcre -lhbzlib -Wl,--end-group -oDemo.exe -Lc:/hb32/lib/win/mingw -Lc:/
qt/4.8.3/lib
Tecle algo para continuar...
C:\hb32\addons\hbqt\tutorial>
O arquivo hbqt.hbc tem o seguinte conteudo. Será que está certo as linhas comentadas?
Código: Selecionar todos
#
# $Id: hbqt.hbc 34 2012-10-13 21:57:41Z bedipritpal $
#
# ---------------------------------------------------------------
# Copyright 2010 Viktor Szakats (harbour syenar.net)
# See COPYING for licensing terms.
# ---------------------------------------------------------------
libs=hbqtcore.hbc
# libs=hbqtdesigner.hbc
libs=hbqtgui.hbc
libs=hbqtnetwork.hbc
# libs=hbqtwebkit.hbc
# libs=hbqtsql.hbc
libs=gtqtc.hbc
Agradeço novamente pela ajuda.
Antonio Carlos
harbour + qtcontribs
Enviado: 25 Out 2012 17:32
por Imatech
Olá !
QUiLoader() foi removido da Lib hbQT a alguns meses...
Se esta treinando com os exemplos do Giovanni d'Maria, passe ao próximo exercicio...
Sucesso...
harbour + qtcontribs
Enviado: 25 Out 2012 19:14
por carlos_dornelas
Mas entäo como vocë faz para ler os formulários?
Antonio Carlos
harbour + qtcontribs
Enviado: 25 Out 2012 19:25
por Imatech
Veja os exemplos em:
\HB??\addons\hbqt\tests
Nova codificação para seu exemplo:
Código: Selecionar todos
FUNCTION Main()
LOCAL oUI
/* Load sample.ui */
oUI := hbqtui_sample():new()
oUI:create()
oUI:oWidget:show()
QApplication():exec()
RETURN NIL
harbour + qtcontribs
Enviado: 26 Out 2012 15:24
por carlos_dornelas
Ronaldo, grato pela tua paciência em me ajudar!
Agora compilou o meu sample.prg (usei "hbmk2 sample.prg sample.ui" e também com o arquivo .hbp "hbmk2 meuprojeto.hbp"), porém ao executar o sample.exe nada acontece! O que pode estar faltando ainda? (além da minha ignorância? rsrs)
Antonio Carlos
harbour + qtcontribs
Enviado: 26 Out 2012 15:54
por Imatech
Olá Antonio Carlos !
Agora que o código esta correto...
O empecilho é um bug a ser resolvido no próximo release da hbQT ( r.42 )
Enquanto isso, passe ao próximo exercicio 8-|
Em harbour, Compile sempre usando arquivos de projeto ( .hbp )
Exemplo:
"hbmk2 meuprojeto.hbp"
Sucesso...
harbour + qtcontribs
Enviado: 26 Out 2012 16:19
por carlos_dornelas
Ronaldo, grato mais uma vez! Já fiz quase todos os exercícios! E a Qt me parece bastante promissora. Você sabe me informar se com a versão estável 3.0.0 (
http://sourceforge.net/projects/harbour ... urce=files ) do harbour, a hbqt está funcional?
Antonio Carlos
harbour + qtcontribs
Enviado: 26 Out 2012 17:31
por Imatech
Olá Antonio Carlos !
Em materia de programação visual ( harbour ), nada se compara a hbQT
Recomendo que "NÃO" utilize hbQT com harbour 3.0 ( Bugs existentes e metodos extintos )...
Utilize em produção e sem medo a versão 3.2 ( ou superior quando disponivel )
http://sourceforge.net/projects/harbour ... e/download
E tambem a última versão disponivel da hbQT:
http://sourceforge.net/projects/qtcontr ... urce=files
Formularios ( Telas ): minha preferência é criar tudo via código, sem uso do Designer...
Marinas Gui ( não uso )
http://www.marinas-gui.org/projects/mar ... as-gui.htm
Sucesso...