Come creare il tuo primo programma in C++ con Qt Creator


Hai mai sentito parlare di Qt? È un nuovo framework che, grazie al suo IDE Qt Creator, potrai programmare in C++ in modo facile e veloce.
di Antonio Lamorgese


Qt è un framework di sviluppo di applicazioni C++, open source e multipiattaforma per desktop e dispositivi mobile. Grazie al suo IDE Qt Creator, mette a disposizione una serie di strumenti supportati da varie piattaforme come Linux, OS X, Windows, Android, iOS, BlackBerry e tante altre ancora, per lo sviluppo agile in C++ in modo facile e veloce.

Più di un linguaggio di programmazione, Qt è un framework scritto in C++. Qt estende, o meglio ancora, trasforma il modello a oggetti di C++ nel modello a oggetti di Java. Cioè si passa dall’ereditarietà multipla all’ereditarietà gerarchica di Java.

Tanto per fare un po’ di chiarezza, in C++ una classe può estendere infinite classi, mentre in Java e di conseguenza in Qt, una classe nel momento in cui viene istanziata viene associata sempre ad un oggetto Parent. Per cui distruggendo l’oggetto padre vengono rimossi automaticamente dalla memoria tutti gli oggetti figli associati.

Questo limita fortemente il classico memory leak, fastidiosissimo errore dovuto al fatto che molti oggetti in C++ impegnano porzioni di memoria anche se non più istanziati.

Beh questo in Java e anche in Qt non succede in quanto con la rimozione degli oggetti Parent vengono rimossi automaticamente anche tutti gli oggetti figli associati e che non avrebbero più la necessità di esistere.

Questo è uno degli aspetti più importanti di Qt, cioè la traslazione del modello a oggetti di C++ a quello gerarchico di linguaggi come Java.

Qt è un preprocessore, possiede un Meta-Object Compiler viene utilizzato per estendere il linguaggio C++ con funzionalità come signal e slot. Prima della fase di compilazione, il MOC analizza i file sorgente scritti in C++, Qt-esteso, e genera da essi sorgenti C++ conformi agli standard.

In questo articolo, ti descriverò come installare Qt. Vedrai come utilizzare Qt in due modi diversi; sia da riga di comando, tramite il classico terminale di Linux, sia da interfaccia utente, sfruttando Qt Creator, l’ambiente di sviluppo integrato di Qt. Quindi, ti spiegherò come scrivere ed eseguire un semplice programma Qt, il classico Hello World. Tieni presente che tutto quello che vedrai in Linux, potrai replicarlo esattamente anche in ambiente Windows e OS X.


LEGGI ANCHE: Come creare un app senza scrivere una sola riga di codice


1. Il tuo primo programma Qt, scritto e compilato da riga di comando

Iniziamo innanzitutto installando il pacchetto Build Essential che è un insieme di librerie che ti consentono di installare e utilizzare tutti gli strumenti di C++ in Ubuntu.

Apri lo strumento a riga di comando di Ubuntu, il famoso Terminale, e quindi esegui il seguente comando, con i privilegi che sudo assegna all’utente corrente, per aggiornare l’indice del tuo repository locale con quello prelevato da Internet:

$ sudo apt-get update

Questo comando consente di installare gli ultimi pacchetti software disponibili su Internet. Ora, dopo l’aggiornamento del repository, esegui il seguente comando per installare il pacchetto Build Essential:

$ sudo apt-get install build-essential
Fonte: https://vitux.com/

Tieni presente che solo per aggiungere, rimuovere, aggiornare e configurare il software su Ubuntu occorre avere privilegi di root, di conseguenza l’utente corrente deve avere i privilegi di poter eseguire comandi con sudo.

Successivamente, esegui il seguente comando come sudo per installare il pacchetto Qt Creator che contiene sia l’interfaccia utente che gli strumenti da riga di comando per la creazione e l’esecuzione di un progetto Qt.

$ sudo apt-get install qtcreator
Fonte: https://vitux.com/

Premi il tasto Y quando il sistema richiede di scegliere se proseguire l’installazione o l’esecuzione dei seguenti comandi. Se desideri utilizzare Qt 5 come versione predefinita di Qt Creator, digita il seguente comando:

$ sudo apt install qt5-default
Fonte: https://vitux.com/

Per distribuire progetti più complessi in un secondo momento, sarà necessario installare anche la documentazione e gli esempi di Qt. Ad ogni modo questa operazione puoi effettuarla digitando il seguente comando come sudo:

$ sudo apt-get install qt5-doc qtbase5-examples qtbase5-doc-html
Fonte: https://vitux.com/

anche qui digita sempre Y quando il sistema richiede di scegliere se continuare l’installazione o meno. Ora sei pronto per utilizzare da riga di comando Qt Creator e gli strumenti dell’interfaccia utente.

1.2. Installazione di Qt Creator da riga di comando

Una persona esperta nell’uso del Terminale di Linux, è sempre alla ricerca di soluzioni per tutti i problemi di programmazione eseguibili all’interno del Terminale stesso. Dopotutto, è molto semplice scrivere e compilare programmi Qt da riga di comando di Linux. Pertanto, segui questi passaggi per scrivere ed eseguire un semplice programma Qt da Terminale.

1.3. Passaggio 1: creare la cartella del progetto

Creiamo prima di tutto una cartella di lavoro che servirà successivamente come cartella per il nostro primo progetto Qt.

$ mkdir SampleProject

Ovviamente puoi scegliere sia nomi dei progetti sia i nomi dei file in base alla tua libera scelta. Cerca di porre particolare attenzione nel digitare ed eseguire i i passaggi seguenti.

Fonte: https://vitux.com/

1.4. Passaggio 2: crea un file .cpp nella cartella del progetto

Rendi la cartella del progetto, cartella corrente con il seguente comando:

$ cd SampleProject

Successivamente, crea un file con estensione .cpp in questa cartella tramite l’editor nano, preinstallato in Ubuntu, come segue:

$ nano testmain.cpp

Ovviamente puoi usare uno dei tuoi editor di testo preferiti.

Fonte: https://vitux.com/

Nel file, testmain.cpp appena creato, copia e incolla questo programma Qt, il cui unico scopo è stampare una riga in una finestra con il titolo “Il mio primo programma Qt”.

#include <QApplication>
#include <QLabel>
#include <QWidget>

int main (int argc, char * argv []) {
   QApplication app (argc, argv);
   QLabel hello ("<center> Benvenuto nel mio primo programma Qt </center>");
   hello.setWindowTitle ("Il mio primo programma Qt");
   hello.resize (400, 400);
   ciao.show ();
   return app.exec ();
}
Fonte: https://vitux.com/

Esci dal file utilizzando i tasti Ctrl + X, successivamente salvalo premendo Y e Invio.

1.5. Passaggio 3: crea il file di progetto Qt

Dopo aver salvato il file, esegui il seguente comando per creare un file di progetto Qt:

Fonte: https://vitux.com/
$ qmake -project

L’esecuzione del comando ha creato un file con nome di SampleProject.pro nella cartella del progetto corrente. Questo file di progetto è il file di base per i progetti Qt e può essere modificato per scopi più complessi.

1.6. Passaggio 4: configurazione del file di progetto Qt

Dato che vogliamo compilare il progetto dalla riga di comando, dovremo aggiungere la seguente riga al nostro file di progetto, quello con estensione “.pro”.

Apri il file SampleProject.pro con l’editor nano con il seguente comando:

$ nano SampleProject.pro
Fonte: https://vitux.com/

Aggiungi la riga su menzionata e salva il file premendo Ctrl + X, premi Y per conferma e successivamente Invio.

1.7. Passaggio 5: esegui qmake per rendere il progetto specifico per la piattaforma in uso

Per rendere specifica la piattaforma, nel file .pro, è necessario eseguire il seguente comando:

$ qmake SampleProject.pro
Fonte: https://vitux.com/

Questo comando creerà un file di nome “Makefile” nella cartella del progetto corrente. Puoi verificare l’esistenza di questo file eseguendo il comando ls.

1.8. Passaggio 6: compila ed esegui il progetto

Il seguente comando make compilerà il Makefile in un programma eseguibile.

$ make
Fonte: https://vitux.com/

Tutto questo, a condizione che non ci siano errori nel progetto, questo comando dovrebbe creare un programma eseguibile nella cartella di lavoro corrente. Puoi verificare tutto ciò eseguendo il comando ls. Il file SampleProject, in colore verde, è il mio file Qt eseguibile.

1.9. Passaggio 7: lancia il file eseguibile

Finalmente siamo pronti per eseguire il file compilato che abbiamo creato nell’ultimo passaggio da Terminale. Digita il seguente comando:

$ ./SampleProject

Ecco l’output del programma:

Fonte: https://vitux.com/

Come vedi appare una finestra con titolo ed etichetta così come abbiamo specificato nel codice!

2. Il tuo primo programma Qt, compilato da interfaccia utente di Qt Creator

Se sei interessato a eseguire lo stesso programma da interfaccia utente con Qt Creator, segui questa procedura:

2.1. Avvia Qt Creator

Prima di tutto avvia l’applicazione Qt Creator ricercando Qt Creator dalla Dash di Ubuntu o direttamente scorrendo l’elenco delle applicazioni installate. Al di la di tutto, sappi che puoi avviare digitando il seguente comando da Terminale:

$ qtcreator

2.2. Crea un progetto Qt

Dopo l’esecuzione del comando precedentemente, si aprirà una schermata, come quella rappresentata in figura, che ti permetterà di accedere a Qt Creator cliccando sulla rispettiva icona.

Fonte: https://vitux.com/

Crea un nuovo progetto cliccando sul pulsante New project :

Fonte: https://vitux.com/

Questo aprirà la seguente maschera dove è possibile scegliere la tipologia di progetto:

Fonte: https://vitux.com/

Dopo aver specificato la tipologia di progetto, indica il nome del progetto e la cartella di progetto.

Fonte: https://vitux.com/

Quindi, dopo aver inserito il nome del tuo progetto Qt e specificato la posizione in cui desideri crearlo, clicca su Avanti; e si aprirà la seguente finestra dove sarà possibile selezionare il kit, in questo caso selezioniamo Desktop:

Fonte: https://vitux.com/

Clicca su Avanti. Ti verranno presentate le informazioni sulla classe di startup del progetto:

Ovviamente puoi cambiare i nomi delle classi e degli oggetti indicati secondo tua libera scelta, ma per il tuo primo programma Qt, è preferibile che tu lasci i nomi dei file che Qt Creator ti suggerisce. Quindi, clicca su Avanti e ti verranno presentati i seguenti dettagli sulla gestione del progetto appena creato:

Fonte: https://vitux.com/

Fai clic sul pulsante Fine e sei pronto per lavorare sul tuo primo progetto Qt.

2.3. Il tuo primo programma Qt

Qt Creator aprirà automaticamente il file mainwindow.cpp per impostazione predefinita. Clicca sul file main.cpp selezionandolo dalla lista gerarchica del progetto presentata nel pannello a sinistra. Nel file main.cpp, sostituisci il codice presente come segue:

#include <QApplication>
#include <QLabel>
#include <Qwidget>

int main (int argc, char * argv []) {
   QApplication app (argc, argv);
   QLabel hello ("<center> Benvenuto nel mio primo programma Qt </center>");
   hello.setWindowTitle ("Il mio primo programma Qt");
   hello.resize (400, 400);
   ciao.show ();
   return app.exec ();
}

Ecco come dovrebbe apparire la finestra del tuo progetto Qt:

Fonte: https://vitux.com/

Salva il file utilizzando i tasti Ctrl + S o selezionando Salva dal menu File di Qt Creator.

2.4. Esecuzione del programma

Infine, esegui il progetto utilizzando i tasti Ctrl + R o selezionando Execute dal menu Build. Il tuo programma verrà compilato ed eseguito e sarai in grado di vedere l’output seguente:

Fonte: https://vitux.com/

vedrai la classica Window, cioè una finestra con tanto di titolo ed etichetta come specificato nel progetto. Non dimenticare di compilare il progetto prima di eseguirlo, quesa operazione va fatta ogni volta che apporti modifiche al codice sorgente.

Come hai potuto vedere, compilare ed eseguire il tuo primo programma Qt e più semplice di quanto tu abbia potuto immaginare. Puoi personalizzare il tema o altri aspetti di Qt Creator per renderlo più adatto alle tue esigenze.

In questo video tutorial potrai vedere come creare un progetto Qt con Qt Creator ed apprezzare aspetti più avanzati nell’uso di Qt.

Come creare un app hello World con QT
Antonio Lamorgese


Desideri acquisire nuove competenze?

corsi.it

Seguire questo corso online ti offrirà
l'opportunità di acquisire nuove competenze e di
migliorare il tuo curriculum professionale.
Clicca qui per seguire le prime lezioni gratuite online

Corsi.it - Il portale Nr.1 al mondo di corsi online


Amministratore di rete e sviluppatore. Dopo anni di esperienza nel settore, ho ideato un sistema di gestione dati MYSQL in PHP senza scrivere una sola riga di codice. Scopri di più....