ScrolledWindow (Python) Marta Maria Casetti mmcasetti@gmail.com 2012 Ajoute des barres de défilement à son élément graphique enfant Luc Rebert, traduc@rebert.name 2011 Alain Lojewski, allomervan@gmail.com 2011-2012 Luc Pionchon pionchon.luc@gmail.com 2011 Bruno Brouard annoa.b@gmail.com 2011-12 Luis Menina liberforce@freeside.fr 2014 ScrolledWindow

Une image dans une fenêtre avec barres de défilement.

Code utilisé pour générer cet exemple from gi.repository import Gtk import sys class MyWindow(Gtk.ApplicationWindow): def __init__(self, app): Gtk.Window.__init__( self, title="ScrolledWindow Example", application=app) self.set_default_size(200, 200) # the scrolledwindow scrolled_window = Gtk.ScrolledWindow() scrolled_window.set_border_width(10) # there is always the scrollbar (otherwise: AUTOMATIC - only if needed # - or NEVER) scrolled_window.set_policy( Gtk.PolicyType.ALWAYS, Gtk.PolicyType.ALWAYS) # an image - slightly larger than the window... image = Gtk.Image() image.set_from_file("gnome-image.png") # add the image to the scrolledwindow scrolled_window.add_with_viewport(image) # add the scrolledwindow to the window self.add(scrolled_window) class MyApplication(Gtk.Application): def __init__(self): Gtk.Application.__init__(self) def do_activate(self): win = MyWindow(self) win.show_all() def do_startup(self): Gtk.Application.do_startup(self) app = MyApplication() exit_status = app.run(sys.argv) sys.exit(exit_status)
Méthodes utiles pour un élément graphique ScrolledWindow

La méthode set_policy(hscrollbar_policy, vscrollbar_policy), où chaque argument est l'un des Gtk.Policy.AUTOMATIC, Gtk.Policy.ALWAYS, Gtk.Policy.NEVER, définit laquelle des barres de défilement verticale ou horizontale doit s'afficher. AUTOMATIC les affiche seulement si nécessaire, ALWAYS et NEVER les affichent respectivement toujours ou jamais.

La méthode add_with_viewport(widget) est utilisé pour ajouter l'élément graphique Gtk.Widget widget, sans possibilité de défilement à l'intérieur de la fenêtre.

La méthode set_placement(window_placement) organise le cadrage du contenu de la fenêtre en fonction de ses barres de défilement. Les options possibles des arguments sont : Gtk.CornerType.TOP_LEFT (par défaut, les barres de défilement sont en bas et à droite de la fenêtre), Gtk.CornerType.TOP_RIGHT, Gtk.CornerType.BOTTOM_LEFT, Gtk.CornerType.BOTTOM_RIGHT.

Les méthodes set_hadjustment(ajustement) et set_vadjustment(ajustement) définissent l'ajustement Gtk.Adjustment. C'est la représentation d'une valeur avec une limite inférieure et supérieure, des incréments d'étape et de page, d'une taille de page et est construite sous la forme Gtk.Adjustment(valeur, inferieure, superieure, step_increment, page_increment, page_size) où les champs sont du type float. (Notez que step_increment n'est pas utilisé dans notre exemple et qu'il peut être défini à 0).

Références API

Dans cet exemple, les éléments suivants sont utilisés :

GtkScrolledWindow

Standard Enumerations

GtkImage