Programmer en C et Qt4 pour Linux

Je programmais depuis des années en Pascal (Delphi) sous Windows. Désirant me passer totalement de cet OS, j'ai recherché des outils de programmation sous Linux. J'ai tout d'abord utilisé l'équivalent de Delphi, à savoir Lazarus. En fait depuis des années, je boudais le langage C.

Puis j'ai fini par apprendre le C afin de pouvoir programmer les microcontroleurs AVR sous Linux (Avec KontrollerLab). Et en définitive j'ai trouvé que le langage C n'est pas si mal que ça! Les "pascaliens" le dénigrent souvent, moi j'ai testé et je l'ai adopté! D'autant que c'est un langage très ouvert, avec plein de bibliothèques très diverses en open source.

Il me restait alors à trouver un environnement intégré permettant de programmer des applications pour Linux en C, avec fenêtres, boites de dialogues, de saisies, boutons etc...

Après avoir essayé plusieurs solutions que je ne veux pas critiquer, j'ai trouvé qdevelop qui me donne entière satisfaction.

qdevelop permet la programmation en C/C++ et la gestion d'une interface graphique en Qt4 avec Qt4 designer.

1 Voici un aperçu de Qt4 Designer:

A noter que Qt4 Designer est directement accessible DEPUIS qdevelop par un simple clic sur le fichier ".ui" et que les modifications apportées aux objets graphiques (on dit "widgets" en langage Qt) sont automatiquement répercutées dans le code source de l'application.

Je publie sur ce site des logiciels (avec les sources) écrits avec qdevelop.

Vous y trouverez une fenêtre principale comprenant:
  • un "menu"
  • des boutons
  • des boutons avec un "icon" dessus
  • des QLineEdit (boites de saisie texte)
  • un QComboBox (liste de choix, déroulante)
  • un QTextEdit ( equiv. Tmemo delphi, avec nombreuses fonctions d'éditions)
  • un QTableWidget (equiv. TStringGrid delphi avec fonctions de tri intégrées...)
Dans le code source en C du programme associé vous verrez comment exploiter les propriétés et les évènements générés par ces objets, en particulier comment:
  • copier le contenu texte du presse papier dans le QLineEdit
  • trouver une ligne dans ce QTextEdit contenant un texte donné
  • recopier une ligne ou un mot du QTextEdit dans un QLineEdit
  • recopier le contenu d'un QLineEdit dans une case du QTableWidget
  • lire et sauvegarder sur le disque dur le contenu du QTableWidget
  • utiliser des onglets: QTabWidget
  • DESSIN: dessiner avec des droites, des ellipses etc... sur une grande surface (dans un QPixmap associé à un QLabel )
  • utiliser des couleurs pour dessiner et écrire
  • récupérer les coordonnées de la souris lors d'un clic dans le pixmap
  • etc...
Tout cela semble facile mais pour ceux qui ont l'habitude de Delphi, ces opérations de base se font dans une syntaxe extrêmement déroutante! On s'y fait en quelques jours, mais au départ j'ai ramé grave! Mais je vous assure que cela vaut la peine! Et cet exemple que je vous donne, vous permettra je pense de gagner du temps.

2 Exemple: logiciel planétarium associé à l'APE2009

Lien direct vers la description de l'APE2009: GO-TO pour monture équatoriale

3 -



10825