Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi Eclipse MS-Office SQL & SGBD Oracle  4D  Business Intelligence
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
FORUM PYTHON F.A.Q PYTHON TUTORIELS PYTHON SOURCES PYTHON OUTILS PYTHON LIVRES PYTHON
Chapitre 5. Vue d'ensemble des widgets

Chapitre 5. Vue d'ensemble des widgets

Avec PyGTK, l'utilisation d'un widget passe en général par les étapes suivantes :

  • invoquer gtk.* - l'une des différentes fonctions de création de widget. Elles sont toutes détaillées dans cette section.
  • connecter tous les signaux et évènements que l'on veut utiliser aux gestionnaires appropriés.
  • configurer les attributs du widget.
  • placer le widget dans un conteneur grâce à l'appel ad hoc : gtk.Container.add(), gtk.Box.pack_start(), etc.
  • afficher le widget avec gtk.Widget.show().

show() fait savoir à GTK que la préparation du widget est achevée et qu'il peut maintenant être affiché. Pour le faire disparaitre à nouveau, vous pouvez utiliser gtk.Widget.hide(). L'ordre d'affichage des widgets n'est pas important, mais je conseille d'afficher la fenêtre en dernier de sorte que celle-ci apparaisse complète, plutôt que de voir chaque widget s'y afficher à tour de rôle. Les enfants d'un widgets (une fenêtre est aussi un widget) ne seront pas affichés tant que la fenêtre elle-même ne l'aura pas été avec la méthode show().

5.1. Hiérarchie des widgets

Pour information, voici représentée sous forme d'arbre la hiérarchie des classes utilisées pour implémenter les widgets (les widgets obsolètes et les classes auxilliaires ont été omis).

gobject.GObject
 |
 gtk.Object
  +gtk.Widget
  | +gtk.Misc
  | | +gtk.Label
  | | | `gtk.AccelLabel
  | | +gtk.Arrow
  | | `gtk.Image
  | +gtk.Container
  | | +gtk.Bin
  | | | +gtk.Alignment
  | | | +gtk.Frame
  | | | | `gtk.AspectFrame
  | | | +gtk.Button
  | | | | +gtk.ToggleButton
  | | | | | `gtk.CheckButton
  | | | | |   `gtk.RadioButton
  | | | | `gtk.OptionMenu
  | | | +gtk.Item
  | | | | +gtk.MenuItem
  | | | |   +gtk.CheckMenuItem
  | | | |   | `gtk.RadioMenuItem
  | | | |   +gtk.ImageMenuItem
  | | | |   `gtk.TearoffMenuItem
  | | | +gtk.Window
  | | | | +gtk.Dialog
  | | | | | +gtk.ColorSelectionDialog
  | | | | | +gtk.FileSelection
  | | | | | +gtk.FontSelectionDialog
  | | | | | +gtk.InputDialog
  | | | | | `gtk.MessageDialog
  | | | | `gtk.Plug
  | | | +gtk.EventBox
  | | | +gtk.HandleBox
  | | | +gtk.ScrolledWindow
  | | | `gtk.Viewport
  | | +gtk.Box
  | | | +gtk.ButtonBox
  | | | | +gtk.HButtonBox
  | | | | `gtk.VButtonBox
  | | | +gtk.VBox
  | | | | +gtk.ColorSelection
  | | | | +gtk.FontSelection
  | | | | `gtk.GammaCurve
  | | | `gtk.HBox
  | | |   +gtk.Combo
  | | |   `gtk.Statusbar
  | | +gtk.Fixed
  | | +gtk.Paned
  | | | +gtk.HPaned
  | | | `gtk.VPaned
  | | +gtk.Layout
  | | +gtk.MenuShell
  | | | +gtk.MenuBar
  | | | `gtk.Menu
  | | +gtk.Notebook
  | | +gtk.Socket
  | | +gtk.Table
  | | +gtk.TextView
  | | +gtk.Toolbar
  | | `gtk.TreeView
  | +gtk.Calendar
  | +gtk.DrawingArea
  | | `gtk.Curve
  | +gtk.Editable
  | | +gtk.Entry
  | | | `gtk.SpinButton
  | +gtk.Ruler
  | | +gtk.HRuler
  | | `gtk.VRuler
  | +gtk.Range
  | | +gtk.Scale
  | | | +gtk.HScale
  | | | `gtk.VScale
  | | `gtk.Scrollbar
  | |   +gtk.HScrollbar
  | |   `gtk.VScrollbar
  | +gtk.Separator
  | | +gtk.HSeparator
  | | `gtk.VSeparator
  | +gtk.Invisible
  | +gtk.Preview
  | `gtk.ProgressBar
  | +gtk.Adjustment
  +gtk.CellRenderer
  | +gtk.CellRendererPixbuf
  | +gtk.CellRendererText
  | +gtk.CellRendererToggle
  +gtk.ItemFactory
  +gtk.Tooltips
  `gtk.TreeViewColumn
Responsable bénévole de la rubrique Python : Guillaume Duriaud - Contacter par EMail :
Vos questions techniques : forum d'entraide Python - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2008 www.developpez.com - Legal informations.