From 1e2862d82033dfabcc6d923e9db14106c6ce8d07 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Sun, 27 Feb 2011 07:50:30 +0000 Subject: [PATCH] 2011-02-27 08:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/qtcore/hbqt_hbqevents.cpp ! Fixed to convert object name to uppercase when registering an event. Francesco's patch with a twist to do less .toUpper() calls. Pls test. + examples/hbqt_tut + examples/hbqt_tut/hbmk.hbm + examples/hbqt_tut/win01.prg + examples/hbqt_tut/win10.prg + examples/hbqt_tut/win20.prg + examples/hbqt_tut/win02.prg + examples/hbqt_tut/win11.prg + examples/hbqt_tut/win21.prg + examples/hbqt_tut/win12.prg + examples/hbqt_tut/win03.prg + examples/hbqt_tut/win13.prg + examples/hbqt_tut/win04.prg + examples/hbqt_tut/win14.prg + examples/hbqt_tut/win05.prg + examples/hbqt_tut/win15.prg + examples/hbqt_tut/win06.prg + examples/hbqt_tut/win07.prg + examples/hbqt_tut/win16.prg + examples/hbqt_tut/win08.prg + examples/hbqt_tut/win17.prg + examples/hbqt_tut/win09.prg + examples/hbqt_tut/win18.prg + examples/hbqt_tut/win19.prg + examples/hbqt_tut/prova.ui + examples/hbqt_tut/test.jpg + examples/hbqt_tut/test.dbf + Added HBQT tutorial created by Giovanni Di Maria. ! Used hbformat to format them. * Renamed a.jpg to test.jpg + Added hbmk.hbm --- harbour/ChangeLog | 37 ++++ .../contrib/hbqt/qtcore/hbqt_hbqevents.cpp | 4 +- harbour/examples/hbqt_tut/hbmk.hbm | 7 + harbour/examples/hbqt_tut/prova.ui | 209 ++++++++++++++++++ harbour/examples/hbqt_tut/test.dbf | Bin 0 -> 6295 bytes harbour/examples/hbqt_tut/test.jpg | Bin 0 -> 10170 bytes harbour/examples/hbqt_tut/win01.prg | 15 ++ harbour/examples/hbqt_tut/win02.prg | 21 ++ harbour/examples/hbqt_tut/win03.prg | 32 +++ harbour/examples/hbqt_tut/win04.prg | 33 +++ harbour/examples/hbqt_tut/win05.prg | 20 ++ harbour/examples/hbqt_tut/win06.prg | 28 +++ harbour/examples/hbqt_tut/win07.prg | 29 +++ harbour/examples/hbqt_tut/win08.prg | 50 +++++ harbour/examples/hbqt_tut/win09.prg | 22 ++ harbour/examples/hbqt_tut/win10.prg | 53 +++++ harbour/examples/hbqt_tut/win11.prg | 17 ++ harbour/examples/hbqt_tut/win12.prg | 110 +++++++++ harbour/examples/hbqt_tut/win13.prg | 20 ++ harbour/examples/hbqt_tut/win14.prg | 24 ++ harbour/examples/hbqt_tut/win15.prg | 21 ++ harbour/examples/hbqt_tut/win16.prg | 20 ++ harbour/examples/hbqt_tut/win17.prg | 63 ++++++ harbour/examples/hbqt_tut/win18.prg | 40 ++++ harbour/examples/hbqt_tut/win19.prg | 27 +++ harbour/examples/hbqt_tut/win20.prg | 32 +++ harbour/examples/hbqt_tut/win21.prg | 50 +++++ 27 files changed, 982 insertions(+), 2 deletions(-) create mode 100644 harbour/examples/hbqt_tut/hbmk.hbm create mode 100644 harbour/examples/hbqt_tut/prova.ui create mode 100644 harbour/examples/hbqt_tut/test.dbf create mode 100644 harbour/examples/hbqt_tut/test.jpg create mode 100644 harbour/examples/hbqt_tut/win01.prg create mode 100644 harbour/examples/hbqt_tut/win02.prg create mode 100644 harbour/examples/hbqt_tut/win03.prg create mode 100644 harbour/examples/hbqt_tut/win04.prg create mode 100644 harbour/examples/hbqt_tut/win05.prg create mode 100644 harbour/examples/hbqt_tut/win06.prg create mode 100644 harbour/examples/hbqt_tut/win07.prg create mode 100644 harbour/examples/hbqt_tut/win08.prg create mode 100644 harbour/examples/hbqt_tut/win09.prg create mode 100644 harbour/examples/hbqt_tut/win10.prg create mode 100644 harbour/examples/hbqt_tut/win11.prg create mode 100644 harbour/examples/hbqt_tut/win12.prg create mode 100644 harbour/examples/hbqt_tut/win13.prg create mode 100644 harbour/examples/hbqt_tut/win14.prg create mode 100644 harbour/examples/hbqt_tut/win15.prg create mode 100644 harbour/examples/hbqt_tut/win16.prg create mode 100644 harbour/examples/hbqt_tut/win17.prg create mode 100644 harbour/examples/hbqt_tut/win18.prg create mode 100644 harbour/examples/hbqt_tut/win19.prg create mode 100644 harbour/examples/hbqt_tut/win20.prg create mode 100644 harbour/examples/hbqt_tut/win21.prg diff --git a/harbour/ChangeLog b/harbour/ChangeLog index daf1338716..c7f0deab40 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,43 @@ The license applies to all entries newer than 2009-04-28. */ +2011-02-27 08:46 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + * contrib/hbqt/qtcore/hbqt_hbqevents.cpp + ! Fixed to convert object name to uppercase when registering an event. + Francesco's patch with a twist to do less .toUpper() calls. + Pls test. + + + examples/hbqt_tut + + examples/hbqt_tut/hbmk.hbm + + examples/hbqt_tut/win01.prg + + examples/hbqt_tut/win10.prg + + examples/hbqt_tut/win20.prg + + examples/hbqt_tut/win02.prg + + examples/hbqt_tut/win11.prg + + examples/hbqt_tut/win21.prg + + examples/hbqt_tut/win12.prg + + examples/hbqt_tut/win03.prg + + examples/hbqt_tut/win13.prg + + examples/hbqt_tut/win04.prg + + examples/hbqt_tut/win14.prg + + examples/hbqt_tut/win05.prg + + examples/hbqt_tut/win15.prg + + examples/hbqt_tut/win06.prg + + examples/hbqt_tut/win07.prg + + examples/hbqt_tut/win16.prg + + examples/hbqt_tut/win08.prg + + examples/hbqt_tut/win17.prg + + examples/hbqt_tut/win09.prg + + examples/hbqt_tut/win18.prg + + examples/hbqt_tut/win19.prg + + examples/hbqt_tut/prova.ui + + examples/hbqt_tut/test.jpg + + examples/hbqt_tut/test.dbf + + Added HBQT tutorial created by Giovanni Di Maria. + ! Used hbformat to format them. + * Renamed a.jpg to test.jpg + + Added hbmk.hbm + 2011-02-27 00:24 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * contrib/hbqt/qtcore/hbqt_hbqevents.cpp ! Fixed recent typo. Thanks Francesco. diff --git a/harbour/contrib/hbqt/qtcore/hbqt_hbqevents.cpp b/harbour/contrib/hbqt/qtcore/hbqt_hbqevents.cpp index e65f2a15b7..6994e25e4f 100644 --- a/harbour/contrib/hbqt/qtcore/hbqt_hbqevents.cpp +++ b/harbour/contrib/hbqt/qtcore/hbqt_hbqevents.cpp @@ -81,10 +81,10 @@ void hbqt_events_register_createobj( QEvent::Type eventtype, QByteArray szCreate if( iIndex == -1 ) { s_lstEvent << eventtype; - s_lstCreateObj << szCreateObj; + s_lstCreateObj << szCreateObj.toUpper(); } else - s_lstCreateObj[ iIndex ] = szCreateObj; + s_lstCreateObj[ iIndex ] = szCreateObj.toUpper(); } void hbqt_events_unregister_createobj( QEvent::Type eventtype ) diff --git a/harbour/examples/hbqt_tut/hbmk.hbm b/harbour/examples/hbqt_tut/hbmk.hbm new file mode 100644 index 0000000000..7f848e961e --- /dev/null +++ b/harbour/examples/hbqt_tut/hbmk.hbm @@ -0,0 +1,7 @@ +# +# $Id$ +# + +hbqt.hbc + +-w3 -es2 diff --git a/harbour/examples/hbqt_tut/prova.ui b/harbour/examples/hbqt_tut/prova.ui new file mode 100644 index 0000000000..6805d67bcf --- /dev/null +++ b/harbour/examples/hbqt_tut/prova.ui @@ -0,0 +1,209 @@ + + + MainWindow + + + + 0 + 0 + 657 + 400 + + + + MainWindow + + + + + + 10 + 20 + 87 + 27 + + + + PushButton + + + + + + 10 + 70 + 103 + 20 + + + + RadioButton + + + + + + 10 + 100 + 103 + 20 + + + + RadioButton + + + + + + 10 + 130 + 87 + 20 + + + + CheckBox + + + + + + 330 + 0 + 272 + 165 + + + + + + + 500 + 200 + 111 + 111 + + + + + + + 120 + 20 + 22 + 23 + + + + ... + + + + + + 120 + 130 + 177 + 25 + + + + + + + 20 + 210 + 261 + 61 + + + + + + + 20 + 280 + 110 + 25 + + + + + + + 20 + 320 + 118 + 23 + + + + 24 + + + + + + 340 + 320 + 251 + 16 + + + + Qt::Horizontal + + + + + + 340 + 180 + 110 + 25 + + + + + + + 340 + 220 + 118 + 25 + + + + + + + 20 + 180 + 261 + 25 + + + + + + + + 0 + 0 + 657 + 23 + + + + + File + + + + + + + + + diff --git a/harbour/examples/hbqt_tut/test.dbf b/harbour/examples/hbqt_tut/test.dbf new file mode 100644 index 0000000000000000000000000000000000000000..fabf6eeb6d8ba0f240c64cb01317d075afd008b4 GIT binary patch literal 6295 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 HZ0i32Tt4}2 literal 0 HcmV?d00001 diff --git a/harbour/examples/hbqt_tut/win01.prg b/harbour/examples/hbqt_tut/win01.prg new file mode 100644 index 0000000000..6fee32c5fc --- /dev/null +++ b/harbour/examples/hbqt_tut/win01.prg @@ -0,0 +1,15 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd + +PROCEDURE Main() + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Finestra di Giovanni" ) + oWnd:resize( 640, 480 ) + oWnd:show() + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win02.prg b/harbour/examples/hbqt_tut/win02.prg new file mode 100644 index 0000000000..36f066c0d2 --- /dev/null +++ b/harbour/examples/hbqt_tut/win02.prg @@ -0,0 +1,21 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd +STATIC calendario + +PROCEDURE Main() + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Finestra di Giovanni" ) + oWnd:resize( 640, 480 ) + calendario := QCalendarWidget( oWnd ) + calendario:resize( 250, 200 ) + calendario:move( 50, 50 ) + calendario:setFirstDayOfWeek( 1 ) + calendario:setGridVisible( .T. ) + oWnd:show() + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win03.prg b/harbour/examples/hbqt_tut/win03.prg new file mode 100644 index 0000000000..c6b47a7087 --- /dev/null +++ b/harbour/examples/hbqt_tut/win03.prg @@ -0,0 +1,32 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd +STATIC pulsante1 + +PROCEDURE Main() + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Finestra di Giovanni" ) + oWnd:resize( 640, 480 ) + Pulsante1 := QPushButton( oWnd ) + Pulsante1:setText( "Premi per messaggio" ) + Pulsante1:resize( 300, 50 ) + Pulsante1:move( 50, 50 ) + Pulsante1:Connect( "clicked()", { || messaggio() } ) + oWnd:show() + s_qApp:exec() + + RETURN + +PROCEDURE messaggio + + STATIC oBox + + oBox := QMessageBox() + oBox:setInformativeText( "attenzione!!! " ) + oBox:setWindowTitle( "Informazione" ) + oBox:show() + + RETURN diff --git a/harbour/examples/hbqt_tut/win04.prg b/harbour/examples/hbqt_tut/win04.prg new file mode 100644 index 0000000000..97b4ff5da8 --- /dev/null +++ b/harbour/examples/hbqt_tut/win04.prg @@ -0,0 +1,33 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd + +PROCEDURE Main() + + LOCAL Pulsante1, Pulsante2 + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Prova dei pulsanti" ) + oWnd:resize( 640, 480 ) + Pulsante1 := QPushButton( oWnd ) + Pulsante1:setText( "Quit" ) + Pulsante1:move( 50, 50 ) + Pulsante1:Connect( "clicked()", { || s_qApp:quit() } ) + Pulsante2 := QPushButton( oWnd ) + Pulsante2:setText( "Premere per modificare la barra del titolo" ) + Pulsante2:move( 50, 100 ) + Pulsante2:setIcon( QIcon( "Star_32.bmp" ) ) + Pulsante2:resize( 300, 50 ) + Pulsante2:Connect( "clicked()", { || modifica() } ) + oWnd:show() + s_qApp:exec() + + RETURN + +PROCEDURE modifica() + + oWnd:setWindowTitle( "Evviva, ci sono riuscito !!!!!!!!!!!!!" ) + + RETURN diff --git a/harbour/examples/hbqt_tut/win05.prg b/harbour/examples/hbqt_tut/win05.prg new file mode 100644 index 0000000000..a64d32992b --- /dev/null +++ b/harbour/examples/hbqt_tut/win05.prg @@ -0,0 +1,20 @@ +#include "hbqtgui.ch" + +STATIC s_qApp + +PROCEDURE Main() + + LOCAL oWnd + LOCAL oSBar + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:show() + oWnd:setWindowTitle( "Harbour-Qt Implementation Test Dialog" ) + oWnd:resize( 640, 480 ) + oSBar := QStatusBar( oWnd ) + oWnd:setStatusBar( oSBar ) + oSBar:showMessage( "Harbour-QT Statusbar Ready!" ) + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win06.prg b/harbour/examples/hbqt_tut/win06.prg new file mode 100644 index 0000000000..001508f2ec --- /dev/null +++ b/harbour/examples/hbqt_tut/win06.prg @@ -0,0 +1,28 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd +STATIC barra_schede +STATIC clienti, fornitori, magazzino + +PROCEDURE Main() + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Finestra di Giovanni" ) + oWnd:resize( 500, 300 ) + barra_schede := QTabWidget( oWnd ) + barra_schede:resize( 400, 200 ) + barra_schede:move( 50, 50 ) + + clienti := QWidget() + fornitori := QWidget() + magazzino := QWidget() + + barra_schede:addTab( clienti, "Scheda Clienti" ) + barra_schede:addTab( fornitori, "Scheda Fornitori" ) + barra_schede:addTab( magazzino, "Scheda Magazzino" ) + oWnd:show() + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win07.prg b/harbour/examples/hbqt_tut/win07.prg new file mode 100644 index 0000000000..e85fdf75a0 --- /dev/null +++ b/harbour/examples/hbqt_tut/win07.prg @@ -0,0 +1,29 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd +STATIC testo +STATIC orolo + +PROCEDURE Main() + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Finestra di Giovanni" ) + oWnd:resize( 640, 480 ) + testo := Qlabel( oWnd ) + testo:setText( "clocking..." ) + testo:move( 100, 100 ) + orolo := QTimer() + orolo:Connect( "timeout()", { || stampa_orologio() } ) + orolo:start( 1000 ) + oWnd:show() + s_qApp:exec() + + RETURN + +PROCEDURE stampa_orologio + + testo:setText( Time() ) + + RETURN diff --git a/harbour/examples/hbqt_tut/win08.prg b/harbour/examples/hbqt_tut/win08.prg new file mode 100644 index 0000000000..024ec1f70b --- /dev/null +++ b/harbour/examples/hbqt_tut/win08.prg @@ -0,0 +1,50 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd +STATIC testo +STATIC orolo +STATIC pulsante_start, pulsante_stop + +PROCEDURE Main() + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Finestra di Giovanni" ) + oWnd:resize( 640, 480 ) + testo := Qlabel( oWnd ) + testo:setText( "clocking..." ) + testo:move( 100, 100 ) + testo:resize( 200, 100 ) + orolo := QTimer() + orolo:Connect( "timeout()", { || stampa_orologio() } ) + pulsante_start := QPushButton( oWnd ) + pulsante_start:move( 300, 100 ) + pulsante_start:setText( "Start" ) + pulsante_start:connect( "pressed()", { || start() } ) + pulsante_stop := QPushButton( oWnd ) + pulsante_stop:move( 300, 200 ) + pulsante_stop:setText( "Stop" ) + pulsante_stop:connect( "pressed()", { || stop() } ) + oWnd:show() + s_qApp:exec() + + RETURN + +PROCEDURE stampa_orologio + + testo:setText( Time() ) + + RETURN + +PROCEDURE start + + orolo:start( 1000 ) + + RETURN + +PROCEDURE stop + + orolo:stop() + + RETURN diff --git a/harbour/examples/hbqt_tut/win09.prg b/harbour/examples/hbqt_tut/win09.prg new file mode 100644 index 0000000000..a0a884d23a --- /dev/null +++ b/harbour/examples/hbqt_tut/win09.prg @@ -0,0 +1,22 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd + +PROCEDURE Main() + + LOCAL Pulsante1 + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Prova dei pulsanti" ) + oWnd:resize( 300, 200 ) + Pulsante1 := QPushButton( oWnd ) + Pulsante1:setText( "Quit" ) + Pulsante1:move( 50, 50 ) + Pulsante1:Connect( "clicked()", { || s_qApp:quit() } ) + Pulsante1:setStyleSheet( "background-color: yellow; border: 2px solid #FF0000;" ) + oWnd:show() + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win10.prg b/harbour/examples/hbqt_tut/win10.prg new file mode 100644 index 0000000000..f8ce8b1971 --- /dev/null +++ b/harbour/examples/hbqt_tut/win10.prg @@ -0,0 +1,53 @@ +#include "hbqtgui.ch" + +PROCEDURE Main() + + STATIC qApp + STATIC finestra + STATIC oMenuBar, oMenu1, oVoceIns, oVoceMod + + qApp := QApplication() + // ----------Impostazione Finestra----------- + finestra := QmainWindow() + finestra:SetFixedSize( 300, 200 ) + finestra:setWindowTitle( "Volto" ) + // ----------Impostazione Menu----------- + oMenuBar := QMenuBar( finestra ) + oMenuBar:resize( 700, 22 ) + oMenu1 := QMenu() + oMenu1:setTitle( "Anagrafica" ) + oVoceIns := QAction( oMenu1 ) + oVoceIns:setText( "Inserimento" ) + oVoceIns:connect( "triggered(bool)", { || inserimento() } ) + oVoceMod := QAction( oMenu1 ) + oVoceMod:setText( "Modifica" ) + oVoceMod:connect( "triggered(bool)", { || modifica() } ) + oMenu1:addAction( oVoceIns ) + oMenu1:addAction( oVoceMod ) + oMenuBar:addMenu( oMenu1 ) + finestra:Show() + qApp:exec() + + RETURN + +PROCEDURE inserimento() + + STATIC finestra2 + + finestra2 := QmainWindow() + finestra2:SetFixedSize( 640, 480 ) + finestra2:setWindowTitle( "Inserimento Anagrafica" ) + finestra2:Show() + + RETURN + +PROCEDURE modifica() + + STATIC finestra2 + + finestra2 := QmainWindow() + finestra2:SetFixedSize( 640, 480 ) + finestra2:setWindowTitle( "Modifica Anagrafica" ) + finestra2:Show() + + RETURN diff --git a/harbour/examples/hbqt_tut/win11.prg b/harbour/examples/hbqt_tut/win11.prg new file mode 100644 index 0000000000..82ebc29818 --- /dev/null +++ b/harbour/examples/hbqt_tut/win11.prg @@ -0,0 +1,17 @@ +#include "hbqtgui.ch" + +STATIC applicazione, finestra, ui, file + +PROCEDURE Main() + + applicazione := QApplication() + file := QFile( "prova.ui" ) + file:open( 1 ) + ui := QUiLoader() + finestra := ui:load( file ) + file:close() + finestra:show() + applicazione:exec() + applicazione:quit() + + RETURN diff --git a/harbour/examples/hbqt_tut/win12.prg b/harbour/examples/hbqt_tut/win12.prg new file mode 100644 index 0000000000..0f424d7923 --- /dev/null +++ b/harbour/examples/hbqt_tut/win12.prg @@ -0,0 +1,110 @@ +#include "hbqtgui.ch" + +STATIC tabella + +PROCEDURE Main() + + //------------Dichiarazioni-------------- + LOCAL applicazione, finestra + LOCAL cella, valore + LOCAL num_campi, num_record, intestazioni + LOCAL x, y + LOCAL pulsante_primo, pulsante_ultimo + applicazione := QApplication() + finestra := QMainWindow() + finestra:resize( 800, 600 ) + //------------Apre DBF e conta campi e record------------ + creafiletest() + USE test + num_record = RecCount() + num_campi = FCount() + //------------Dimensiona tabella-------------- + tabella := QTableWidget( finestra ) + tabella:move( 50, 50 ) + tabella:resize( 700, 450 ) + tabella:setRowCount( num_record ) + tabella:setColumnCount( num_campi ) + tabella:setColumnWidth( 0, 200 ) + //------------Riempie tabella-------------- + for x = 1 TO num_record + for y = 1 TO num_campi + cella := QTableWidgetItem() + valore = FieldGet( y ) + DO CASE + CASE ValType( valore ) = "C" + cella:setText( valore ) + CASE ValType( valore ) = "N" + cella:setText( AllTrim( Str(valore ) ) ) + CASE ValType( valore ) = "D" + cella:setText( Dtoc( valore ) ) + CASE ValType( valore ) = "L" + cella:setText( iif( valore = .T. ,"Yes","No" ) ) + end CASE + tabella:setItem( x - 1, y - 1, cella ) + next y + SKIP + next x + //------------Crea intestazioni tabella-------------- + intestazioni := QStringList() + for x = 1 TO 50 + intestazioni:append( field( x ) ) + next k + tabella:setHorizontalHeaderLabels( intestazioni ) + USE + //------------Pulsanti-------------- + pulsante_primo := QPushButton( finestra ) + pulsante_primo:move( 100, 520 ) + pulsante_primo:setText( "Primo" ) + pulsante_primo:Connect( "clicked()", { || primo() } ) + pulsante_ultimo := QPushButton( finestra ) + pulsante_ultimo:move( 300, 520 ) + pulsante_ultimo:setText( "Ultimo" ) + pulsante_ultimo:Connect( "clicked()", { || ultimo() } ) + //------------Esecuzione-------------- + finestra:show() + applicazione:exec() + applicazione:quit() + + RETURN + +PROCEDURE primo() + + tabella:scrollToTop() + tabella:setCurrentCell( 0, 0 ) + tabella:setFocus() + + RETURN + +PROCEDURE ultimo() + + tabella:scrollToBottom() + tabella:setCurrentCell( tabella:rowCount() - 1, 0 ) + tabella:setFocus() + + RETURN + +PROCEDURE creafiletest() + + IF .NOT. File( "test.dbf" ) + aCampi := {} + AAdd( aCampi, { "num", "N", 6, 0 } ) + AAdd( aCampi, { "nome", "C", 20, 0 } ) + AAdd( aCampi, { "cognome", "C", 25, 0 } ) + AAdd( aCampi, { "dt_nasc", "D", 8, 0 } ) + AAdd( aCampi, { "yesno", "L", 1, 0 } ) + dbCreate( "test.dbf", aCampi, "DBFNTX" ) + ENDIF + USE test + GO BOTTOM + m_num := test -> num + for i := 1 TO 50 + APPEND BLANK + test -> num := ++ m_num + test -> nome := "pippo" + test -> cognome := "pluto" + test -> dt_nasc := CToD( "10/12/2001" ) + test -> yesno := .F. + next + CLOSE test + + RETURN diff --git a/harbour/examples/hbqt_tut/win13.prg b/harbour/examples/hbqt_tut/win13.prg new file mode 100644 index 0000000000..e0541f2fcc --- /dev/null +++ b/harbour/examples/hbqt_tut/win13.prg @@ -0,0 +1,20 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd +STATIC stringa +STATIC dialogo + +PROCEDURE Main() + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Finestra di Giovanni" ) + oWnd:resize( 400, 300 ) + oWnd:show() + dialogo := QInputDialog() + stringa = dialogo:getText( oWnd, "Titolo", "Come ti chiami?" ) + oWnd:setWindowTitle( stringa ) + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win14.prg b/harbour/examples/hbqt_tut/win14.prg new file mode 100644 index 0000000000..8d7f0dcee6 --- /dev/null +++ b/harbour/examples/hbqt_tut/win14.prg @@ -0,0 +1,24 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC barra_progresso + +PROCEDURE Main() + + LOCAL k + + s_qApp := QApplication() + barra_progresso := QProgressBar() + barra_progresso:resize( 400, 50 ) + barra_progresso:move( 50, 50 ) + barra_progresso:setRange( 1, 500000 ) + barra_progresso:setWindowTitle( "Elaborazione in corso" ) + barra_progresso:Show() + barra_progresso:repaint() + for k = 1 TO 500000 + barra_progresso:setValue( k ) + next k + barra_progresso:quit() + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win15.prg b/harbour/examples/hbqt_tut/win15.prg new file mode 100644 index 0000000000..61c67f67d7 --- /dev/null +++ b/harbour/examples/hbqt_tut/win15.prg @@ -0,0 +1,21 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC finestra +STATIC logo + +PROCEDURE Main() + + s_qApp := QApplication() + finestra := QmainWindow() + finestra:SetFixedSize( 400, 300 ) + finestra:setWindowTitle( "Finestra Giovanni" ) + logo := QLabel( finestra ) + logo:move( 50, 50 ) + logo:resize( 300, 200 ) + logo:SetPixmap( QPixmap( "test.jpg" ) ) + logo:setStyleSheet( "border: 2px solid #0000ff;" ) + finestra:show() + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win16.prg b/harbour/examples/hbqt_tut/win16.prg new file mode 100644 index 0000000000..c20e380536 --- /dev/null +++ b/harbour/examples/hbqt_tut/win16.prg @@ -0,0 +1,20 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC oWnd +STATIC testo + +PROCEDURE Main() + + s_qApp := QApplication() + oWnd := QMainWindow() + oWnd:setWindowTitle( "Finestra di Giovanni" ) + oWnd:resize( 300, 200 ) + testo := Qlabel( oWnd ) + testo:setText( "Gio" ) + testo:move( 10, 10 ) + testo:resize( 280, 100 ) + oWnd:show() + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win17.prg b/harbour/examples/hbqt_tut/win17.prg new file mode 100644 index 0000000000..ebca702117 --- /dev/null +++ b/harbour/examples/hbqt_tut/win17.prg @@ -0,0 +1,63 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC finestra +STATIC font +STATIC testo +STATIC palette +STATIC slider_rosso, slider_verde, slider_blu + +PROCEDURE Main() + + s_qApp := QApplication() + finestra := QMainWindow() + finestra:resize( 320, 400 ) + finestra:setWindowTitle( "Giovanni" ) + font := QFont() + font:setPointSize( 30 ) + font:setBold( .T. ) + testo := QLabel( finestra ) + testo:setText( "Colori" ) + testo:move( 100, 10 ) + testo:resize( 200, 100 ) + testo:setfont( font ) + slider_rosso := QSlider( finestra ) + slider_rosso:resize( 30, 200 ) + slider_rosso:move( 100, 120 ) + slider_rosso:setMinimum( 0 ) + slider_rosso:setMaximum( 255 ) + slider_rosso:setSingleStep( 1 ) + slider_rosso:setPageStep( 10 ) + slider_rosso:setValue( 0 ) + slider_rosso:Connect( "valueChanged(int)", { || cambia_colori() } ) + slider_verde := QSlider( finestra ) + slider_verde:resize( 30, 200 ) + slider_verde:move( 150, 120 ) + slider_verde:setMinimum( 0 ) + slider_verde:setMaximum( 255 ) + slider_verde:setSingleStep( 1 ) + slider_verde:setPageStep( 10 ) + slider_verde:setValue( 0 ) + slider_verde:Connect( "valueChanged(int)", { || cambia_colori() } ) + slider_blu := QSlider( finestra ) + slider_blu:resize( 30, 200 ) + slider_blu:move( 200, 120 ) + slider_blu:setMinimum( 0 ) + slider_blu:setMaximum( 255 ) + slider_blu:setSingleStep( 1 ) + slider_blu:setPageStep( 10 ) + slider_blu:setValue( 0 ) + slider_blu:Connect( "valueChanged(int)", { || cambia_colori() } ) + finestra:show() + s_qApp:exec() + + RETURN + +PROCEDURE cambia_colori() + + palette := QPalette() + palette:SetColor( QPalette_WindowText, QColor( slider_rosso:value , slider_verde:value , slider_blu:value ) ) + testo:setPalette( palette ) + + RETURN + diff --git a/harbour/examples/hbqt_tut/win18.prg b/harbour/examples/hbqt_tut/win18.prg new file mode 100644 index 0000000000..0cb65d066e --- /dev/null +++ b/harbour/examples/hbqt_tut/win18.prg @@ -0,0 +1,40 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC finestra +STATIC font +STATIC testo +STATIC modificatore + +PROCEDURE Main() + + s_qApp := QApplication() + finestra := QMainWindow() + finestra:resize( 320, 200 ) + finestra:setWindowTitle( "Giovanni" ) + font := QFont() + font:setPointSize( 30 ) + testo := QLabel( finestra ) + testo:setText( "Testo" ) + testo:move( 10, 10 ) + testo:resize( 280, 100 ) + testo:setfont( font ) + modificatore := QSpinBox( finestra ) + modificatore:move( 50, 150 ) + modificatore:resize( 50, 25 ) + modificatore:Connect( "valueChanged(int)", { || cambia_dimensione() } ) + modificatore:setMinimum( 1 ) + modificatore:setMaximum( 72 ) + modificatore:setSingleStep( 1 ) + modificatore:setValue( 30 ) + finestra:show() + s_qApp:exec() + + RETURN + +PROCEDURE cambia_dimensione() + + font:setPointSize( modificatore:value ) + testo:setfont( font ) + + RETURN diff --git a/harbour/examples/hbqt_tut/win19.prg b/harbour/examples/hbqt_tut/win19.prg new file mode 100644 index 0000000000..8432c28f5b --- /dev/null +++ b/harbour/examples/hbqt_tut/win19.prg @@ -0,0 +1,27 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC finestra +STATIC casella + +PROCEDURE Main() + + s_qApp := QApplication() + finestra := QMainWindow() + finestra:resize( 320, 200 ) + finestra:setWindowTitle( "Giovanni" ) + casella := QComboBox( finestra ) + casella:move( 100, 50 ) + casella:resize( 100, 25 ) + casella:addItem( "Francia" ) + casella:addItem( "Italia" ) + casella:addItem( "U.S.A." ) + casella:addItem( "Germania" ) + casella:addItem( "Belgio" ) + casella:addItem( "Spagna" ) + casella:addItem( "Portogallo" ) + casella:addItem( "Islanda" ) + finestra:show() + s_qApp:exec() + + RETURN diff --git a/harbour/examples/hbqt_tut/win20.prg b/harbour/examples/hbqt_tut/win20.prg new file mode 100644 index 0000000000..5af3a0bab4 --- /dev/null +++ b/harbour/examples/hbqt_tut/win20.prg @@ -0,0 +1,32 @@ +STATIC s_qApp +STATIC finestra +STATIC testo +STATIC font +STATIC casella + +PROCEDURE Main() + + s_qApp := QApplication() + finestra := QMainWindow() + finestra:resize( 320, 200 ) + finestra:setWindowTitle( "Giovanni" ) + font := QFont() + testo := Qlabel( finestra ) + testo:setText( "Ciao a tutti" ) + testo:resize( 200, 80 ) + testo:move( 50, 20 ) + testo:setfont( font ) + casella := QFontComboBox( finestra ) + casella:move( 50, 100 ) + casella:resize( 200, 25 ) + casella:Connect( "currentFontChanged(QFont)", { || cambia_testo() } ) + finestra:show() + s_qApp:exec() + + RETURN + +PROCEDURE cambia_testo + + testo:setFont( casella:currentFont() ) + + RETURN diff --git a/harbour/examples/hbqt_tut/win21.prg b/harbour/examples/hbqt_tut/win21.prg new file mode 100644 index 0000000000..0bd8c9b851 --- /dev/null +++ b/harbour/examples/hbqt_tut/win21.prg @@ -0,0 +1,50 @@ +#include "hbqtgui.ch" + +STATIC s_qApp +STATIC finestra +STATIC lcd +STATIC pulsante_diminuisci, pulsante_aumenta + +PROCEDURE Main() + + s_qApp := QApplication() + finestra := QMainWindow() + finestra:resize( 300, 200 ) + finestra:setWindowTitle( "Giovanni" ) + lcd := QLCDNumber( finestra ) + lcd:move( 50, 50 ) + lcd:resize( 200, 50 ) + pulsante_diminuisci := QPushButton( finestra ) + pulsante_diminuisci:resize( 30, 30 ) + pulsante_diminuisci:move( 70, 130 ) + pulsante_diminuisci:setText( "-" ) + pulsante_diminuisci:Connect( "clicked()", { || decrementa() } ) + pulsante_aumenta := QPushButton( finestra ) + pulsante_aumenta:resize( 30, 30 ) + pulsante_aumenta:move( 200, 130 ) + pulsante_aumenta:setText( "+" ) + pulsante_aumenta:Connect( "clicked()", { || incrementa() } ) + finestra:show() + s_qApp:exec() + + RETURN + +PROCEDURE incrementa() + + LOCAL x + + x = lcd:value() + x ++ + lcd:display( x ) + + RETURN + +PROCEDURE decrementa() + + LOCAL x + + x = lcd:value() + x -- + lcd:display( x ) + + RETURN