# C - Code::Blocks : Créer application graphique

**URL:** <https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851>\
**Category:** Programmation\
**Created:** [Juin 1, 2018, 10:52 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851 "2018-06-01T10:52:45Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Fred74](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/c67d28/32.png) [@Fred74](https://www.debian-fr.org/u/Fred74)\
**Post date:** [Juin 1, 2018, 10:52 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/1 "2018-06-01T10:52:45Z")

</div>

Bonjour à tous,

je suis un ancien programmeur,  
J’avais développé des applications il y a quelques années en [VB.NET](http://VB.NET)  
Principalement .NET (asp, sql, etc…) la ça m’intéresse de me remettre dedans et plus particulièrement au C, je viens d’entamer le C de Mathieu Nebra. En effet Microsoft nous prémâche de boulot, peut-être même de trop…

C’est vraiment intéressant et le fait que j’étais programmeur avant m’aide, je passe les pages très rapidement.

Je souhaiterai savoir quel type de projet doit-on créer pour une interface graphique ???  
Je veux dire dans [VB.net](http://VB.net) comme toutes les languages .NET on a juste a faire un glisser pour créer des items : un bouton, checkbox, textbox, etc…  
Après à nous de rédiger les events par le code. Ne ne me dites pas que ce n’est pas possible et que l’on doit réinventer la roue ???  
Si vous êtes programmeur et connaissez .NET, avec tous projet que nous propose code::blocks, vous comprenez que je suis larguer.

Non car la console j’y ai pris goût avec Linux mais des applications graphique sont tout de même plus sympa.

---

<div class="post-metadata">

**Author:** ![jcsm33](https://www.debian-fr.org/user_avatar/www.debian-fr.org/jcsm33/32/3832_2.png) [@jcsm33](https://www.debian-fr.org/u/jcsm33)\
**Post date:** [Juin 1, 2018, 1:28 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/2 "2018-06-01T13:28:58Z")

</div>

Bonjour,

Est-ce que le paquet codeblocks-contrib qui est suggéré par le paquet codeblocks apporte le nécessaire ?

---

<div class="post-metadata">

**Author:** ![Fred74](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/c67d28/32.png) [@Fred74](https://www.debian-fr.org/u/Fred74)\
**Post date:** [Juin 1, 2018, 3:35 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/3 "2018-06-01T15:35:01Z")

</div>

Merci de ta réponse  
donc j’ai installé ce paquet, j’ai fait un test avec GTK+ j’ai donc un HelloWorld en fenêtre, ok  
je m’arrête ici pour l’instant et continu le livre.

Ma dernière question si je comprends bien :  
dans la catégorie GUI il y a : FLTK, GTK+, QT4, wxWidgets project. Donc tous ont pour but de créer une application fenêtre, ok ? Mais quelles sont les différences entre tous ? Y’a t’il un “standard” ?? un que tu me conseillerais plus que d’autres ?

Et il n’y a vraiment pas de glisser coller pour creer des items ?? tout se fait via le code ?

---

<div class="post-metadata">

**Author:** ![jcsm33](https://www.debian-fr.org/user_avatar/www.debian-fr.org/jcsm33/32/3832_2.png) [@jcsm33](https://www.debian-fr.org/u/jcsm33)\
**Post date:** [Juin 1, 2018, 5:01 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/4 "2018-06-01T17:01:03Z")

</div>

Beaucoup de questions, une seule réponse

[WxSmith tutorial: Hello world - CodeBlocks](http://wiki.codeblocks.org/index.php/WxSmith_tutorial:_Hello_world)

Le fait d’ajouter le paquet codeblocks-contrib fait passer de IDE à RAD, en principe.

---

<div class="post-metadata">

**Author:** ![Fred74](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/c67d28/32.png) [@Fred74](https://www.debian-fr.org/u/Fred74)\
**Post date:** [Juin 1, 2018, 8:11 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/5 "2018-06-01T20:11:05Z")

</div>

Ça à l’air de coller parfaitement avec ce que je recherche. Je suis entrain de l’installer. Je verrai ça demain ma connection est vraiment merdique…  
C’est moi ou ils ont l’air de dire que c’est pour du C++ et non du C ?

---

<div class="post-metadata">

**Author:** ![Fred74](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/c67d28/32.png) [@Fred74](https://www.debian-fr.org/u/Fred74)\
**Post date:** [Juin 1, 2018, 9:50 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/6 "2018-06-01T21:50:14Z")

</div>

Je rappel que j’apprends le C et je vois que je peux rajouter des fichiers C/C++ donc les langages ne se gène pas alors ? Je peux rédiger du code C dans un editeur C++ no ?

---

<div class="post-metadata">

**Author:** ![jcsm33](https://www.debian-fr.org/user_avatar/www.debian-fr.org/jcsm33/32/3832_2.png) [@jcsm33](https://www.debian-fr.org/u/jcsm33)\
**Post date:** [Juin 2, 2018, 4:48 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/7 "2018-06-02T04:48:21Z")

</div>

L’outil graphique s’appuie sur wxWidgets qui est, en effet, en C++

---

<div class="post-metadata">

**Author:** ![Fred74](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/c67d28/32.png) [@Fred74](https://www.debian-fr.org/u/Fred74)\
**Post date:** [Juin 2, 2018, 10:11 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/8 "2018-06-02T10:11:45Z")

</div>

Ok donc entre GTK, wxWidgets et Qt avec mon C je n’ai pas le choix =\> GTK.

Je vais commencer avec GTK même si la création du graphique se fait par le code, ce qui m’impressionne un peu. Après quand j’ai débuté en prog ça m’impressionnai au début, après ce n’est que des habitudes et routines. Je passerai au C++ certainement par la suite.

Merci pour ton aide

---

<div class="post-metadata">

**Author:** ![Funkygoby](https://www.debian-fr.org/user_avatar/www.debian-fr.org/funkygoby/32/3984_2.png) [@Funkygoby](https://www.debian-fr.org/u/Funkygoby)\
**Post date:** [Juin 17, 2018, 10:28 UTC](https://www.debian-fr.org/t/c-code-blocks-creer-application-graphique/76851/9 "2018-06-17T10:28:57Z")

</div>

Effectivement, le choix de language peut conditionner le choix de la librairie graphique que tu utilises.

Quelques précisions:

- Qt5 existe depuis un petit moment.
- En général les librairies graphiques possèdent des “bindings” permettant de les utiliser depuis d’autres languages plus “hauts niveaux” (ds le sens niveau d’abstraction) comme Python, Go, etc …
- Il n’y a pas de standard au niveau librairie graphique. Comme dans le logiciel libre en général, les solutions sont multiples mais aucunes n’est parfaites.
- GTK+ est aujourd’hui géré par l’équipe Gnome. Je ne suis pas fan de ce qui se passe chez Gnome et donc, je redoute le pire pour l’avenir de GTK+.

Si tu tiens à programmer en C, oui GTK+ est l’option principale à considérer (avec fltk éventuellement). Il y a aussi nuklear que je n’ai jamais testé mais qui peut être intéressante un jour.  
Avec les bindings, tu peux créer le coeur de ton appli en C et la partie graphique dans un autre language au choix. J’avais un truc en C/C++/Qt abandonné parce que je comprends rien au C++. Il faudra que je teste C/Python3/Qt5 dès que je saurai comment appeler des fonctions C depuis Python.  
Il y a des outils graphiques qui te permettent de construire ton interface en placant les éléments où tu veux, puis de connecter les signaux etc … Ça semble pratique au début mais j’ai jamais réussi à faire exactement ce que je voulais et finalement, j’étais plus efficace en codant tout à la main. Pour GTK+ il y a (avait?) Ajunta et Glade; pour FLTK c’est Fluid; et pour Qt c’est Qt Designer.

D’une manière générale, Qt est plus complet au niveau doc, outils, processus, framework. Mais c’est moins souple, tu es obligé (ils sont en train de regler ça) d’utiliser leur surcouche à C++: La macro QOBJECT, les mocs, les makefiles imcompréhensibles, qmake.

Bref tout ça pour dire que si tu veux faire un truc graphique en C, utilise GTK. Ne t’embetes pas avec glade ou ajounta sauf peut être pour prototyper ton interface.
