Les concepts de base
Une interface graphique est composée de widgets (éléments graphiques) placés dans des conteneurs, qui indiquent comment placer ces widgets à l’écran (un conteneur est aussi un widget). Le premier conteneur que vous allez rencontrer est Gtk::Window, qui représente une fenêtre, et peut contenir un seul élément. Nous allons voir immédiatement un premier exemple très simple :
require 'gtk2'
Gtk.init
window = Gtk::Window.new
button = Gtk::Button.new('Bonjour tout le monde')
window.add(button)
button.show
window.show
Gtk.main
Tout d’abord, Gtk.init sert à initialiser la bibliothèque GTK, et vous ne devez pas créer d’objets de cette bibliothèque avant d’avoir appelé cette méthode. Nous ne décrirons pas ce qu’elle fait en détails, souvenez-vous simplement de l’appeler. Ensuite, nous créons une fenêtre, ainsi qu’un bouton auquel nous attribuons le texte « Bonjour tout le monde », et nous ajoutons le bouton dans la fenêtre. Puis, nous rendons ce bouton et cette fenêtre visibles. Par défaut, les widgets ne sont pas visibles, et il faudra donc ne pas oublier de les rendre visible. Enfin, nous appelons Gtk.main, qui lance la « boucle principale » du programme (nous allons expliquer cela tout de suite).
Maintenant, exécutez ce programme. Vous devriez voir s’afficher une fenêtre contenant uniquement le bouton que nous avons décrit. Cette fenêtre vous offre les fonctionnalités habituelles : vous pouvez la redimensionner, la déplacer, et utiliser les boutons standards définis par votre gestionnaire de fenêtres (ie. réduire, agrandir, fermer). Vous pouvez également cliquer sur le bouton, mais il ne se passera rien. De plus, si vous fermez la fenêtre, vous pourrez constater que le programme ne se termine pas pour autant. Cela nous amène à la gestion des évènements.
Sommaire
Précédent : IHM-GTK : Introduction Suivant : IHM-GTK : Les évènements


