Clipper On Line • Ver Tópico - harbour + qtcontribs

harbour + qtcontribs

Projeto Harbour QT - HbQt, HbXBP e HbIDE

Moderador: Moderadores

 

harbour + qtcontribs

Mensagempor MARCELOG » 17 Out 2012 14:12

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-project/files/binaries-windows/nightly/harbour-nightly-win.exe/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/qtcontribs/files/latest/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/source/qt-win-opensource-4.8.3-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.
Editado pela última vez por Toledo em 18 Out 2012 17:27, no total de 3 vez
Água mole em pedra dura tanto bate que até espirra!
Avatar de usuário

MARCELOG
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 546
Data de registro: 15 Mar 2005 16:54
Cidade/Estado: Divinópolis/MG
Curtiu: 0 vez
Mens.Curtidas: 6 vezes

harbour + qtcontribs

Mensagempor carlos_dornelas » 17 Out 2012 14:40

Marcelo, acho que o pacote 3, referente a mingw, já vem normalmente incluído no harbour noturno.

Antonio Carlos
carlos_dornelas
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 392
Data de registro: 25 Ago 2004 21:54
Curtiu: 0 vez
Mens.Curtidas: 10 vezes

harbour + qtcontribs

Mensagempor carlos_dornelas » 17 Out 2012 14:49

Estorna! Acho que falei besteira! O que vem junto com o harbour é o compilador mingw.

Antonio Carlos
carlos_dornelas
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 392
Data de registro: 25 Ago 2004 21:54
Curtiu: 0 vez
Mens.Curtidas: 10 vezes

harbour + qtcontribs

Mensagempor carlos_dornelas » 24 Out 2012 20:03

Marcelo,

Voce jah conseguiu compilar formularios .UI no windows? Se sim, poderia postar um exemplo?

Grato

Antonio Carlos
carlos_dornelas
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 392
Data de registro: 25 Ago 2004 21:54
Curtiu: 0 vez
Mens.Curtidas: 10 vezes

harbour + qtcontribs

Mensagempor Imatech » 24 Out 2012 20:53

Basta incluir o SeuForm.ui no arquivo de projeto ( *.hbp )
M., Ronaldo

by: IMATECH

IMATION TECNOLOGIA
Avatar de usuário

Imatech
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 350
Data de registro: 24 Ago 2010 23:48
Cidade/Estado: Goiânia-GO
Curtiu: 4 vezes
Mens.Curtidas: 27 vezes

harbour + qtcontribs

Mensagempor carlos_dornelas » 25 Out 2012 13:21

Imatech,

Estou comandando assim: "hbmk2 sample.prg sample.ui", mas sempre dá erro:

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 é:
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
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
<?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
carlos_dornelas
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 392
Data de registro: 25 Ago 2004 21:54
Curtiu: 0 vez
Mens.Curtidas: 10 vezes

harbour + qtcontribs

Mensagempor Imatech » 25 Out 2012 14:04

Olá !

Sem inclucir a lib: hqQT ( hbqt.hbc ) não vai mesmo...

Segue script para compilação ( .hbp ):
#
# 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
#

M., Ronaldo

by: IMATECH

IMATION TECNOLOGIA
Avatar de usuário

Imatech
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 350
Data de registro: 24 Ago 2010 23:48
Cidade/Estado: Goiânia-GO
Curtiu: 4 vezes
Mens.Curtidas: 27 vezes

harbour + qtcontribs

Mensagempor carlos_dornelas » 25 Out 2012 14:38

Imatech,

Grato pela sua ajuda, mas criei o arquivo "meuprojeto.hbp" e executei "hbmk2 meuprojeto.hbp" e novamente deu o erro:

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?
#
# $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
carlos_dornelas
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 392
Data de registro: 25 Ago 2004 21:54
Curtiu: 0 vez
Mens.Curtidas: 10 vezes

harbour + qtcontribs

Mensagempor Imatech » 25 Out 2012 16:32

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...
M., Ronaldo

by: IMATECH

IMATION TECNOLOGIA
Avatar de usuário

Imatech
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 350
Data de registro: 24 Ago 2010 23:48
Cidade/Estado: Goiânia-GO
Curtiu: 4 vezes
Mens.Curtidas: 27 vezes

harbour + qtcontribs

Mensagempor carlos_dornelas » 25 Out 2012 18:14

Mas entäo como vocë faz para ler os formulários?

Antonio Carlos
carlos_dornelas
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 392
Data de registro: 25 Ago 2004 21:54
Curtiu: 0 vez
Mens.Curtidas: 10 vezes

harbour + qtcontribs

Mensagempor Imatech » 25 Out 2012 18:25

Veja os exemplos em:

\HB??\addons\hbqt\tests

Nova codificação para seu exemplo:
FUNCTION Main()
   LOCAL oUI

  /* Load sample.ui */
   oUI := hbqtui_sample():new()
   oUI:create()
   oUI:oWidget:show()

   QApplication():exec()

   RETURN NIL
M., Ronaldo

by: IMATECH

IMATION TECNOLOGIA
Avatar de usuário

Imatech
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 350
Data de registro: 24 Ago 2010 23:48
Cidade/Estado: Goiânia-GO
Curtiu: 4 vezes
Mens.Curtidas: 27 vezes

harbour + qtcontribs

Mensagempor carlos_dornelas » 26 Out 2012 14:24

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
carlos_dornelas
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 392
Data de registro: 25 Ago 2004 21:54
Curtiu: 0 vez
Mens.Curtidas: 10 vezes

harbour + qtcontribs

Mensagempor Imatech » 26 Out 2012 14:54

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...
M., Ronaldo

by: IMATECH

IMATION TECNOLOGIA
Avatar de usuário

Imatech
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 350
Data de registro: 24 Ago 2010 23:48
Cidade/Estado: Goiânia-GO
Curtiu: 4 vezes
Mens.Curtidas: 27 vezes

harbour + qtcontribs

Mensagempor carlos_dornelas » 26 Out 2012 15:19

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
carlos_dornelas
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 392
Data de registro: 25 Ago 2004 21:54
Curtiu: 0 vez
Mens.Curtidas: 10 vezes

harbour + qtcontribs

Mensagempor Imatech » 26 Out 2012 16:31

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-project/files/binaries-windows/nightly/harbour-nightly-win.exe/download

E tambem a última versão disponivel da hbQT:
http://sourceforge.net/projects/qtcontribs/files/latest/download?source=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/marinas-gui/_Index_help_marinas-gui.htm

Sucesso...
M., Ronaldo

by: IMATECH

IMATION TECNOLOGIA
Avatar de usuário

Imatech
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 350
Data de registro: 24 Ago 2010 23:48
Cidade/Estado: Goiânia-GO
Curtiu: 4 vezes
Mens.Curtidas: 27 vezes

Próximo



Retornar para QtContribs - HBQT

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 1 visitante


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