DOMANDA Come posso creare una interfaccia grafica per c++?

Samuele160

Nuovo Utente
5
1
Salve, da un po' ho iniziato a studiare c++.
Volevo creare una interfaccia grafica per c++ ho sentito parlare di un programma chiamato QT, ma mi chiedevo se esistono alternative più semplici per iniziare.
Grazie mille in anticipo.
 

BrutPitt

Utente Attivo
1,166
1,262
Anzitutto se ti serve un'interfaccia grafica, per iniziare ed imparare il C++, potresti utilizzare la GUI (Graphic User Interface) del sistema operativo che attualmente usi.
Per esempio sotto Windows le API Win32 o le MFC (Microsoft Foundation Class)
Esse pero' sono utilizzabili/presenti esclusivamente sul singolo sistema operativo (nativo)

QT e' una libreria che mette a disposizione oltre alla GUI, anche numerose altre funzionalita' di sistema, insomma e' una libreria completa a tutto tondo
E' anche "portabile", a differenza delle GUI di sisitema, e cio' significa che puo' essere usata su diverse piattaforme e Sistemi Operativi senza dover riscrivere il codice: basta una ricompilazione.
Se stai iniziando ad imparare a programmare, forse QT non e' la soluzione piu' semplice da utilizzare, perche' oltre al C++ introduce un proprio "meta-linguaggio" per la gestione dei propri oggetti

Come QT esiste anche wxWidgets, che ha (piu' o meno le medesime caratteristiche), ma ha un utilizzo diretto in C++.

C'e' anche GTK+ che trovi in tutte le distribuzioni linux, e che se vuoi installare (facilmente: files/librerie binary) su Windows devi riferirti alla pagina github GTK-for-Windows

Esistono anche librerie piu "semplici" (leggasi: piu' snelle), che quindi sembrano piu' facili da studiare, ma in realta' i concetti sono piu' o meno simili: hai solo meno funzionalita' di cui magari in futuro potresti sentirne la mancanza.

Una di queste e' FLTK, che oltre alla GUI ha poco altro... e ce ne sono diverse come questa, ma il mio consiglio sarebbe quello di fare uno sforzo ed utilizzare una di quelle piu' complete.

Discorso diverso se ti servisse una GUI per un applicazione che utilizzi il FrameBuffer (e.g. uso di API come DirectX/OpenGL/Vulkan, anche in 2D) e che puo'/deve essere utilizzata anche a schermo intero (come accade per i games)
In questo caso, credo che la miglior scelta possa ricadere su ImGui
 
Ultima modifica:

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili