Qt Designer...

Area di discussione libera.

Moderatore: Staff

Regole del forum
1) Rispettare le idee altrui.
2) Evitare le offese dirette.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
Raistlin84
Linux 3.x
Linux 3.x
Messaggi: 542
Iscritto il: lun 28 mar 2005, 0:00
Località: Pistoia

Qt Designer...

Messaggio da Raistlin84 »

Volevo programmare un po' di GUI, e ho iniziato un po' a guardarmi Qt designer, è fatto molto bene. Ma mi sfuggono dei passaggi fondamentali. Ho imparato a fare delle GUI con Kommander, ma ovviamente sono assai limitate e necessitano che Kommander sia installato.
Mentre se le creassi con Qt sarebbere dei veri e propri programmi, da poter lanciare. Il fatto è che Qt genera un file .ui, ma da qui diventa tutto assai oscuro per me. Infatti non sò come arrivare dal file .ui al file che potrà esser eseguito.
Ho provato anche a lavoro dove c'è windows col designer Qt per win, ma anche lì solito problema.
Ho trovato una guida, ma è in spagnolo e capisco solo pochi passaggi. Perciò vorrei sapere come si può fare. . .

Avatar utente
albatros
Iper Master
Iper Master
Messaggi: 2098
Iscritto il: sab 4 feb 2006, 13:59
Kernel: 6.18.0
Desktop: gnome and lxqt
Distribuzione: Ubuntu 24.04 & FC 41
Località: Darmstadt - Germania

Messaggio da albatros »

Sulla programmazione con qt sono stati avviati in contemporanea dei tutorial sia da Linux Pro che da Linux&C. .
Li ho letti entrambi, però, almeno per adesso, la documentazione presente sul sito della trolltech mi pare migliore...
Ci sono anche lì dei tutorial, gli ho solo dato un'occhiata, ma effettivamente mi sembrano fatti abbastanza bene...
Volevo comprare anche un libro, ma, leggendo le recensioni di amazon, mi pare di capire, se uno ha un minimo di basi di C++, che convenga più iniziare con i tutorial di trolltech per poi passare ad un testo avanzato...

Il mio è però un parere di inesperto, aspetta un po' che ti risponda chi già conosce bene le qt...

Avatar utente
chrix
Linux 2.x
Linux 2.x
Messaggi: 375
Iscritto il: gio 30 set 2004, 0:00
Località: Trieste
Contatta:

Messaggio da chrix »

il file ui si può aprire con kuiviewer è integrato in kde, epoi se vuoi fare la GUI allora avrai solo la GUI, se invece vuoi realizzare un'interfaccia per un determinato programma, allora dovrai usare i slot e le connessioni !! leggiti la doc per mgg info.

Avatar utente
Raistlin84
Linux 3.x
Linux 3.x
Messaggi: 542
Iscritto il: lun 28 mar 2005, 0:00
Località: Pistoia

Messaggio da Raistlin84 »

Sì, sì lo sò di Kuiviewer e anche delle cose su Linux&Co.
Ma io mettiamo voglia creare una gui semplicissima, con 2 o 3 bottoni, ad esempio clicko su un pulsante e mi chiude la finestra, su un altro e mi chiama un programma. ma questa non deve esser un semplice file che viene interpretato come succede con Kommander, ma un vero programma.
Il fato è che non capisco come crearlo dal file .ui!
Per ora ho fatto così creo prova.pro.
Poi creo il file Main Window prova.ui.
E poi il file main.cpp
Ho provato a dare qmake poi ma non và... mi date il link alla spiegazione, non tanto di come fare la Gui ma piuttosto come si ottiene il file da lanciare dal file .ui.
Grazie!

Avatar utente
chrix
Linux 2.x
Linux 2.x
Messaggi: 375
Iscritto il: gio 30 set 2004, 0:00
Località: Trieste
Contatta:

Messaggio da chrix »


Avatar utente
tgmx
Linux 4.x
Linux 4.x
Messaggi: 1336
Iscritto il: ven 28 apr 2006, 14:40
Slackware: 14.1
Desktop: KDE 4
Località: Ancona

Messaggio da tgmx »

se vai sull'help di qt-designer c'è una guida passo passo per creare un piccolo programma.

Io l'ho trovato molto utile.

Avatar utente
Raistlin84
Linux 3.x
Linux 3.x
Messaggi: 542
Iscritto il: lun 28 mar 2005, 0:00
Località: Pistoia

Messaggio da Raistlin84 »

Scusate se son duro, ma io avrei fatto così:

bash-3.00# qmake -project untitled.ui

E mi crea il file untitled.pro

bash-3.00# qmake -makefile untitled.pro
Error processing project file: /root/Desktop/prova/untitled.pro

Invece dovrebbe crearmi il file da lanciare...almeno io sule guide ho trovato così...

Avatar utente
chrix
Linux 2.x
Linux 2.x
Messaggi: 375
Iscritto il: gio 30 set 2004, 0:00
Località: Trieste
Contatta:

Messaggio da chrix »

#include <qapplication.h>
#include <qpushbutton.h>

int main( int argc, char **argv )
{

QApplication a( argc, argv );
QPushButton hello( "Hello world!", 0 );
hello.resize( 100, 30 );
a.setMainWidget( &hello );
hello.show();
return a.exec();

}

Save this code as a plain text file('hello.cpp'). Now let's compile this code by making a project file (.pro) as follows:

TEMPLATE = app
CONFIG += qt warn_on release
HEADERS =
SOURCES = hello.cpp
TARGET = hello

Let's save this file as 'hello.pro' in the same directory as that of our source file and continue with the generation of the Makefile.

[root@Linux mydirectory]# qmake -o Makefile hello.pro
Compile it using 'make'

[root@Linux mydirectory]# make


You are now ready to test your first 'Qt' Wonder. Provided you are in 'X', you can launch theprogram executable.

[root@Linux mydirectory]# ./hello

Avatar utente
Raistlin84
Linux 3.x
Linux 3.x
Messaggi: 542
Iscritto il: lun 28 mar 2005, 0:00
Località: Pistoia

Messaggio da Raistlin84 »

Questo è quello che mi restituisce... :-(



qmake -o Makefile hello.pro

make

mingw32-make -f Makefile.Release all
mingw32-make[1]: Entering directory `C:/Qt'
g++ -c -O2 -O2 -Wall -frtti -fexceptions -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_D
LL -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT -DQT_NEEDS_QMAIN
-I"C:/Qt/include/QtCore" -I"C:/Qt/include/QtGui" -I"C:/Qt/include" -I"C:/Qt/inc
lude/ActiveQt" -I"tmp\moc\release_shared" -I"." -I"mkspecs\win32-g++" -o tmp\obj
\release_shared\hello.o hello.cpp
hello.cpp: In function `int qMain(int, char**)':
hello.cpp:10: error: 'class QApplication' has no member named 'setMainWidget'
hello.cpp:14:3: warning: no newline at end of file
mingw32-make[1]: *** [tmp\obj\release_shared\hello.o] Error 1
mingw32-make[1]: Leaving directory `C:/Qt'
mingw32-make: *** [release-all] Error 2

Avatar utente
Raistlin84
Linux 3.x
Linux 3.x
Messaggi: 542
Iscritto il: lun 28 mar 2005, 0:00
Località: Pistoia

Messaggio da Raistlin84 »

Io cercavo un programma come è il Delphi della Borland, che ti permette di creare applicazioni in maniera viasuale... :-(

Avatar utente
Sari
Linux 3.x
Linux 3.x
Messaggi: 584
Iscritto il: mer 16 feb 2005, 0:00
Slackware: 12.1
Kernel: 2.6.24
Desktop: Gnome
Località: Verona

Messaggio da Sari »

Pultroppo io le QT non le so assolutamente usare, so pero usare le GTK abbastanza bene e su ProgForum (http://www.progforum.it) potrei darti delle dritte su quest'ultime aiutandoti a capire velocemente quello che a me è costato ore... giorni.. mesi :P. Ma per QT come dicevo nada, non so proprio nulla ;).

Comunque sulla scia di Delphi e VisualBasic c'e' Gambas (lo trovi pachetizzato qui' su slacky), ma non lo mai usato perchè ho imparato ad odiare VisualBasic. Di fatto però sembra un ottimo progetto ma devi conoscere il linguaggio basic.

Avatar utente
Raistlin84
Linux 3.x
Linux 3.x
Messaggi: 542
Iscritto il: lun 28 mar 2005, 0:00
Località: Pistoia

Messaggio da Raistlin84 »

Allora forse ho fatto dei passi avanti...ma ancora non ci siamo...

Per ora riesco a fare questo:
1- Apro Qt designer e disegno la mia finestra.
2- Salvo il file.ui in una directory
3- Mi sposto nella directory e uso il comando qmake -project file.ui
4- Mi genera il file.pro
5- Uso il comando qmake -makefile file.pro
A questo punto però mi genera delle directory, release, debug, tmp, purtroppo vuote, e non penso vada bene, tuttavia non mi restituisce nessun errore.
6- Uso il comando make e mi resituisce errore:

F:\Qt\4.1.4\prova>make
mingw32-make -f Makefile.Release
mingw32-make[1]: Entering directory `F:/Qt/4.1.4/prova'
f:\Qt\4.1.4\bin\uic.exe prova.ui -o ui_prova.h
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runt
ime-pseudo-reloc -Wl,-s -Wl,-s -Wl,-subsystem,windows -o "release\prova.exe" -
L"f:\Qt\4.1.4\lib" -L"f:\Qt\4.1.4\lib" -lmingw32 -lqtmain -lQtGui4 -lQtCore4
f:\Qt\4.1.4\lib/libqtmain.a(qtmain_win.o)(.text+0x26):qtmain_win.cpp: undefined
reference to `__gxx_personality_sj0'
f:\Qt\4.1.4\lib/libqtmain.a(qtmain_win.o)(.text+0x1f7):qtmain_win.cpp: undefined
reference to `qMain(int, char**)'
collect2: ld returned 1 exit status
mingw32-make[1]: *** [release\prova.exe] Error 1
mingw32-make[1]: Leaving directory `F:/Qt/4.1.4/prova'
mingw32-make: *** [release] Error 2

Come avrete notato sono su windows, purtroppo a lavoro devo usare quello e nei tempi morti... :D :D :D :D

Avatar utente
Raistlin84
Linux 3.x
Linux 3.x
Messaggi: 542
Iscritto il: lun 28 mar 2005, 0:00
Località: Pistoia

Messaggio da Raistlin84 »

Penso di aver trovato l'errore...
In pratica servono i file main.cpp e file.cpp Scritti in C++. Tuttavia lo strumento che cercavo mi serviva per creare delle semplici GUI sfruttando al massimo un po' di scripting come avvien con Kommander.
Non vedo perchè scrivere in C++ quando basterebbe una finestra con delle scritte e quando clicki sul tasto chiudi si chiude. Pensavo si potesse fare anche con questo programma senza dover star a scrivere codice...

Rispondi