• Benvenuto in Making Videogames!
  • Dai sfogo alla tua fantasia!
  • Crea il tuo Videogioco!
Benvenuto ospite! Login Registrati




Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
Interfaccia utente
#1
Raga com'è possibile creare interfaccie utente nei programmi in c++? non trovo niente di utile per creare interfacce facilmente magari come visual basic... si potrebbe fare?
 
Rispondi
#2
Per il C++ ci sono delle librerie che ti permettono di creare le GUI.
La differenza dal Visual Basic, è che in C++ devi scrivere codice su codice, oppure ti puoi aiutare con alcuni editor per creare le GUI.

Per esempio: Se utilizzi Code Blocks, puoi sfruttare il suo editor: Drag & Drop, con le: wxWidgets, oppure puoi utlizzare le QT, che se non erro hanno un loro editor ufficiale.
 
Rispondi
#3
In C++ puoi creare tutte le interfacce che vuoi, devi solo scegliere come.
Partendo dalla creazione da codice delle varie finestre, utilizzando in WinApi o utilizzando le MFC. Naturalmente è da psicopatici pensare di scrivere una interfaccia utente (se non proprio molto semplice) tutta da codice. Devi quindi sfruttare un editor (i classici editor WISIWIG - What You See Is What You Get - ad esempio quello di Visual Studio). Puoi utilizzare Visual Studio Express Edition che è gratuito. Altrimenti non ricordo se Code::Blocks ha un suo editor, e comunque penso sia ormai obsoleto (ma se sbaglio non mi menate).

Ora come ora poi c'è il .NET e quindi le WinForms sfruttando le classi del framework. In pratica l'interfaccia si costruisce da sola. Ti consiglio caldamente di orientarti su questo, se devi sviluppare per Windows. Meglio ancora, se non sei già esperto di C++ (e dalla domanda che poni credo proprio di no) ti consiglio MOLTO caldamente di orientarti, per sviluppare programmi ad interfaccia utente che non siano strettamente correlati alle performance, di puntare al C# che è molto più semplice da imparare, potente al punto giusto, e integrato in Visual Studio ti crei un'interfaccia utente veramente in poco tempo. Naturalmente sempre in base alle tue capacità.
Per C# se non vuoi utilizzare Visual Studio esiste Sharp Develop, open source. Naturalmente se cerchi su internet trovi anche molto altro.

Visual C++ 2010 Express Edition
http://www.microsoft.com/visualstudio/en...pp-express

Code Blocks
http://www.codeblocks.org/

Sharp Develop
http://www.icsharpcode.net/opensource/sd/

Ora dovresti porti delle domande:
1 - Per che ambiente devo sviluppare?
2 - La mia applicazione deve essere ottimizzata al massimo e altamente performante? Un gioco? Un'applicazione multimediale?
3 - Quanto tempo e voglio ho di imparare un linguaggio potente sì, ma anche complesso da padroneggiare?

Se devi creare solamente un programma con interfaccia utente e niente grafica, vai spedito sul C# (sempre se per Windows naturalmente, anche se in realtà c'è un porting del .NET anche su Linux e MacOS e Android con il progetto Mono). Il fatto che anche quelli del pinguino abbiamo pensato a implementare .NET ti fa capire quando esso sia valido.

http://www.mono-project.com/Main_Page

Inoltre anche con C# potresti sviluppare giochi utilizzando XNA o altri.

Poi se vuoi per forza utilizzare il C++ perché hai intenzione di studiarlo, naturalmente hai tutto il mio incoraggiamento. Il C++ è un linguaggio splendido, che io ho amato e utilizzato a fondo, ma che onestamente oggi come oggi a livello professionale non consiglierei per determinati tipi di applicazioni per la sua poca manutenibilità, la difficoltà di apprendimento per i nuovi sviluppatori, e la minor velocità nello sviluppo. Naturalmente ci sono i pro: pieno controllo, performance al massimo.

Ciao!

 
Rispondi
#4
Allora innanzitutto grazie per le risposte e i consigli... non sono molto esperto, comunque io sto puntando ad imparare il c++ per utilizzarlo con le directx (non ho ancora avuto particolari difficoltà), e proprio a questo a questo scopo volevo incominciare a creare anche una piccola interfaccia grafica da integrare a quello che diventerà "l' engine" che stò sviluppando, quindi non vorrei spostarmi dal linguaggio, visto che è il migliore dal punto di visto di performance ed è sicuramente il piu adatto per la grafica. Poi per quanto riguarda il tempo, ho tutta una vita davanti, quindi non dovrebbe essere un gran problema, infine visto che le directx esistono solo per windows, non uscirò al di fuori di questo ambiente.
 
Rispondi
#5
Se vuoi usare le DirectX allora bene con C++. Per l'interfaccia quindi (almeno ti consiglio) buttati sul Visual Studio con Microsoft Visual C++ Express o full. Poi utilizzare il C++ gestito o non gestito, sfruttare a pieno .NET (se vuoi) e DirectX senza perdere tutte le facilitazioni che ti mette a disposizione l'IDE di Visual Studio.
Inoltre ricorda che XNA non è altro che un framework basato su DirectX per mascherare le funzionalità più complesse e ripetitive della sviluppo con DirectX, anche se credo che sia disponibile solo per C#.


Ciao!
 
Rispondi
#6
Si, io già uso visual c++, ma se non erro è abbastanza un casino utilizzare windows form per aggiungere la parte grafica perchè non è uguale come programmare in win32. Magari proverò qualcos altro.
 
Rispondi
#7
Il progetto C++ con windows form non è proprio C++, è una versione di microsoft del C++ che implementa il framework .NET, conta come linguaggio a se stante: C++/CLI
Tuttavia se vuoi usare il framework .NET usa il C# che è decisamente più pratico, per fare GUI (Graphics User Interface) in C++ la strada migliore è usare librerie esterne come: Qt (vedi anche qui), WxWidgets, FLTK, GTK+, ecc... ma non aspettarti di avere la strada spianata come invece ce l'hai in C# o con VB.NET.
La verità è che il C++ non è stato concepito per fare interfacce grafiche, soprattutto via drag&drop. Valuta anche la possibilità di creare un plugin in C++ da usare con C#.
 
Rispondi
#8
Si, aggiungo solo che visto che lavori in ambiente Visual C++ hai a disposizione li progetto Applicazione MFC che fa proprio al caso tuo. Puoi creare interfaccia utente tramite editor e implementare tranquillamente le DirectX. Editi i file di risorsa .rc direttamente dall'IDE gestendoli graficamente ed aggiungendo i gestori eventi tramite il Wizard. Le MFC (Microsoft Foundation Classes) incapsulano le WinAPI standard. Comunque l'editor di risorse .rc funziona anche per programmare direttamente in WinAPI, come si faceva anche con Visual Studio 5 (e anche 6 mi pare). Solo che così facendo punti i tuoi sforzi su cose ormai obsolete. Ma questo è solo un mio parete.

Ciao!
 
Rispondi
#9
Ok... Grazie! proverò qualcosa per vedere con quale mi trovo meglio
 
Rispondi
#10
Se vuoi fare un interfaccia molto semplice, ti consiglio di usare SFML con C++.
Secondo me è il più facile da utilizzare e puoi utilizzare come imput sia la tastiera che il mouse.
 
Rispondi
  


Vai al forum:


Browsing: 1 Ospite(i)