View Full Version : [C] grafica
Risck256
22-01-2010, 14:59
salve ragazzi avrei bisogno del vostro aiuto potreste mica passarmi una guida che descriva BENE come fare grafica in C con dev cpp? la grafica nel senso come visual basic con una finestrella e i button....solo quello...non mi piace molto la console application....che librerie dovrei usare?
in c? potrei dire una cavolata... ma per quello devi usare c++
Marinelli
22-01-2010, 17:57
Spostato nella sezione dedicata alla programmazione.
Ciao!
La sezione "Programmazione" è più appropriata e riceverai sicuramente delle risposte.
Risck256
22-01-2010, 19:27
ok grazie attenderò risposte
Se devi utilizzare controlli come finestre, pulsanti, ecc puoi utilizzare le API di Windows, ma dev c++ ha buoni pacchetti alternativi come le wx widgetx e sicuramente puoi utilizzare altre librerie come le Qt e GTx.
Hai abbastanza scelta, io personalmente ho sempre utilizzato le API di Windows, ma in passato anche le WxWidgetx con l'ambiente visuale.
Le Qt e Gtx sono librerie abbastanza valide e multipiattaforma, quindi ti consiglio di utilizzare quelle.
Ricordo per Windows c'era un libro Programming Windows che insegnava ad usare le API (windows.h) per creare applicazioni grafiche. Richiede un'ottima conoscenza del linguaggio C.
Il libro è un po datato, ma sempre valido per cominciare e farsi un'idea.
Come alternativa puoi usare librerie come Qt, ma se non erro queste sono C++, mentre il libro che ti suggerivo è specifico per la programmazione C.
Risck256
23-01-2010, 13:37
Ricordo per Windows c'era un libro Programming Windows che insegnava ad usare le API (windows.h) per creare applicazioni grafiche. Richiede un'ottima conoscenza del linguaggio C.
Il libro è un po datato, ma sempre valido per cominciare e farsi un'idea.
Come alternativa puoi usare librerie come Qt, ma se non erro queste sono C++, mentre il libro che ti suggerivo è specifico per la programmazione C.
capito grazie! ma qualche guida online per quanto riguarda le api?
Beh, nn dirmi che su MSDN online nn c'è nulla sulle API...
usare le API nude e crude per creare interfacce grafiche vuol dire farsi del male, cosi come usare il C. dal momento che mi sembra solo una questione di gusti (non ti piace la console) perché non passare ad una piattaforma piu facile da usare, cioé .NET?
ad ogni modo butta via Dev-C++, é una porcheria giá morta che merita solo di morire ancora. usa Visual C++ (ma anche semplicemente Blocco Note é meglio di Dev-C++).
usare le API nude e crude per creare interfacce grafiche vuol dire farsi del male, anche perché, anche volendo, il C non basta: molto probabilmente devi imparare anche il linguaggio per il compilatore di risorse. é un linguaggio semplicissimo ma non lo puoi trascurare se vuoi creare interfacce grafiche in Win32.
Risck256
24-01-2010, 00:13
programmo gia in vb.net e non è il mio linguaggio preferito...preferisco il C per la complessità d'utilizzo...premetto che a scuola faccio tutti e due i linguaggi e quindi per me non vuol dire partire da 0
programmo gia in vb.net e non è il mio linguaggio preferito...preferisco il C per la complessità d'utilizzo... preferisci il C perché é piu complesso da utilizzare...? :mbe:
io comunque ti consiglio mille volte Visual Basic.NET (la versione 2008 naturalmente, non dico la 2010 solo perché é in beta). il C al giorno d'oggi é troppo povero come linguaggio e quindi troppo improduttivo; ricorda che é nato 40 anni fa e 40 anni sono un'eternitá in questo settore.
Risck256
24-01-2010, 10:45
preferisci il C perché é piu complesso da utilizzare...? :mbe:
io comunque ti consiglio mille volte Visual Basic.NET (la versione 2008 naturalmente, non dico la 2010 solo perché é in beta). il C al giorno d'oggi é troppo povero come linguaggio e quindi troppo improduttivo; ricorda che é nato 40 anni fa e 40 anni sono un'eternitá in questo settore.
uso il 2008 gia e non mi piace...il linguaggio C avrà 40 anni ma è ancora utilizzato...il kernel linux è in C...i giochi, anche se pochi, sono in C (molto di più però il c++)
Il kernel linux non ha l'interfaccia grafica infatti.
E nemmeno i giochi, paradossalmente.
Inoltre credo che l'API di win32 sia sconsigliata dalla stessa MS, che per quanto riguarda la gestione del SO ora spinge sui linguaggi .NET...
Cmq se proprio devi, puoi usare C++ con Qt o WxWidgets... per il C temo proprio che non c'è assolutamente nulla.
Il kernel linux non ha l'interfaccia grafica infatti.
E nemmeno i giochi, paradossalmente.
Inoltre credo che l'API di win32 sia sconsigliata dalla stessa MS, che per quanto riguarda la gestione del SO ora spinge sui linguaggi .NET...
Cmq se proprio devi, puoi usare C++ con Qt o WxWidgets... per il C temo proprio che non c'è assolutamente nulla.
Le GTK.
uso il 2008 gia e non mi piace... ci saranno dei motivi concreti immagino.
il linguaggio C avrà 40 anni ma è ancora utilizzato... si, per motivi legacy.
il kernel linux è in C... solo perché il team non é in grado di programmare in C++. i kernels in C++ esistono, cosi come in un futuro molto prossimo esisteranno quelli in C#.
Inoltre credo che l'API di win32 sia sconsigliata dalla stessa MS, che per quanto riguarda la gestione del SO ora spinge sui linguaggi .NET... questo non ha senso, solo un piccolo sottoinsieme delle API Win32 serve a creare GUI, tutto il resto spesso é una scelta piu o meno obbligata se si vuole accedere a determinate funzionalitá del sistema. probabilmente in futuro Windows sará basato interamente su .NET, ma adesso non é cosi.
Risck256
24-01-2010, 18:57
ci saranno dei motivi concreti immagino.
si, per motivi legacy.
solo perché il team non é in grado di programmare in C++. i kernels in C++ esistono, cosi come in un futuro molto prossimo esisteranno quelli in C#.
questo non ha senso, solo un piccolo sottoinsieme delle API Win32 serve a creare GUI, tutto il resto spesso é una scelta piu o meno obbligata se si vuole accedere a determinate funzionalitá del sistema. probabilmente in futuro Windows sará basato interamente su .NET, ma adesso non é cosi.
interessante non so comunque magari mi studio il c++ o la grafica con il c# x fare un giochino che consigliate voi?(anche guide per favore sono linguaggi nuoviper me)
solo perché il team non é in grado di programmare in C++.
Credi che gli ingegneri Intel, Red Hat e Novel non sappiano programmare in C++? Il motivo credo riguardi la compatibilità con il codice sorgente originale, che sarebbe troppo costoso da riscrivere in C++, soprattutto se la riscrittura non dovesse portare vantaggi prestazionali.
Credi che gli ingegneri Intel, Red Hat e Novel non sappiano programmare in C++? Il motivo credo riguardi la compatibilità con il codice sorgente originale, che sarebbe troppo costoso da riscrivere in C++, soprattutto se la riscrittura non dovesse portare vantaggi prestazionali. che dire, di fatto ci hanno provato e non ce l'hanno fatta...
lavorare in un team non é semplice, chi lo fa o l'ha fatto lo sa: é come una catena, basta un solo anello debole e sotto trazione si spezza. gli ingegneri di questa coppola di minchia saranno anche i piu bravi del mondo a programmare in C++ ma evidentemente non tutti in quel team lo sono: tanto per cominciare diciamo che il team é capitanato da un vero ignorante in materia (Torvalds).
fermo resta che di kernel scritto in C++ esiste almeno BeOS, oggi Haiku.
interessante non so comunque magari mi studio il c++ o la grafica con il c# x fare un giochino che consigliate voi?(anche guide per favore sono linguaggi nuoviper me) un po' di punteggiatura mi avrebbe definitivamente aiutato a capire il senso della frase :)
per imparare a programmare in C# puoi partire senz'altro da qui:
http://msdn.microsoft.com/en-us/library/kx37x362.aspx
in particolare qui c'é la guida sul linguaggio vero e proprio:
http://msdn.microsoft.com/en-us/library/67ef8sbd.aspx
con una guida di migrazione semplificata per chi viene da Java, visto che i due linguaggi hanno notevoli somiglianze (ma anche enormi differenze, non farti ingannare dai luoghi comuni):
http://msdn.microsoft.com/en-us/library/ms228358.aspx
il C++ invece non é facile come linguaggio, dovresti farti consigliare un libro ma io non sono in grado di darti suggerimenti. in alternativa al libro ci sta la documentazione online di Visual C++ che comprende anche una guida sul linguaggio:
http://msdn.microsoft.com/en-us/library/60k1461a.aspx
http://msdn.microsoft.com/en-us/library/3bstk3k5.aspx
probabilmente la via migliore per imparare a programmare in Visual C++ é una combinazione delle due, libro + MSDN online.
io comunque, avendo una mezza idea degli obiettivi che vorresti raggiungere, ti consiglierei piu Visual C# che Visual C++. in particolare se vuoi programmare videogames potrebbe interessarti XNA:
http://www.xna.com/
http://msdn.microsoft.com/en-us/library/aa139594.aspx
o comunque probabilmente verresti a contatto con Managed DirectX:
http://msdn.microsoft.com/en-us/library/bb318658(VS.85).aspx
Risck256
24-01-2010, 20:27
un po' di punteggiatura mi avrebbe definitivamente aiutato a capire il senso della frase :)
per imparare a programmare in C# puoi partire senz'altro da qui:
http://msdn.microsoft.com/en-us/library/kx37x362.aspx
in particolare qui c'é la guida sul linguaggio vero e proprio:
http://msdn.microsoft.com/en-us/library/67ef8sbd.aspx
con una guida di migrazione semplificata per chi viene da Java, visto che i due linguaggi hanno notevoli somiglianze (ma anche enormi differenze, non farti ingannare dai luoghi comuni):
http://msdn.microsoft.com/en-us/library/ms228358.aspx
il C++ invece non é facile come linguaggio, dovresti farti consigliare un libro ma io non sono in grado di darti suggerimenti. in alternativa al libro ci sta la documentazione online di Visual C++ che comprende anche una guida sul linguaggio:
http://msdn.microsoft.com/en-us/library/60k1461a.aspx
http://msdn.microsoft.com/en-us/library/3bstk3k5.aspx
probabilmente la via migliore per imparare a programmare in Visual C++ é una combinazione delle due, libro + MSDN online.
io comunque, avendo una mezza idea degli obiettivi che vorresti raggiungere, ti consiglierei piu Visual C# che Visual C++. in particolare se vuoi programmare videogames potrebbe interessarti XNA:
http://www.xna.com/
http://msdn.microsoft.com/en-us/library/aa139594.aspx
o comunque probabilmente verresti a contatto con Managed DirectX:
http://msdn.microsoft.com/en-us/library/bb318658(VS.85).aspx
grazie mille! scusa per la punteggiatura xD
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.