# ScrolledWindow (Python)

Marta Maria Casetti
mmcasetti@gmail.com 2012
Přidává posuvníky pro svůj synovský widget

# ScrolledWindow

Obrázek v okně s posuvníky.

# Kód použitý k vygenerování tohoto příkladu

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)

# Okno s posuvníky scrolled_window = Gtk.ScrolledWindow() scrolled_window.set_border_width(10) # Zde jsou posuvníky vždy (jinak: AUTOMATIC - podle potřeby, # nebo NEVER - nikdy) scrolled_window.set_policy( Gtk.PolicyType.ALWAYS, Gtk.PolicyType.ALWAYS)

# Obrázek - lehce větší než okno image = Gtk.Image() image.set_from_file("gnome-image.png")

# Přidá obrázek do okna s posuvníky scrolled_window.add_with_viewport(image)

# Přidá okno s posuvníky do okna 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)

# Užitečné metody pro widget ScrolledWindow

`set_policy(pravidlo_vodorovného_posuvníku, pravidlo_svislého posuvníku)`, kde oba parametry jsou něco z `Gtk.Policy.AUTOMATIC, Gtk.Policy.ALWAYS, Gtk.Policy.NEVER` reguluje, kdy by se měl vodorovný a svislý posuvník zobrazit: s `AUTOMATIC` se zobrazí v případě potřeby, s `ALWAYS` vždy a s `NEVER` nikdy.

`add_with_viewport(widget)` se používá k přidání `widgetu` (potomka `Gtk.Widget`) bez přirozené schopnosti posouvání svého obsahu.

`set_placement(umisteni_okna)` nastavuje umístění obsahu vůči posuvníkům v okně s posuvníky. Možnosti argumentu jsou `Gtk.CornerType.TOP_LEFT` (výchozí: posuvníky jsou u spodního a pravého okraje okna), `Gtk.CornerType.TOP_RIGHT`, `Gtk.CornerType.BOTTOM_LEFT`, `Gtk.CornerType.BOTTOM_RIGHT`.

`set_hadjustment(přizpůsobení)` a `set_vadjustment(přizpůsobení)` nastaví `přizpůsobení` typu `Gtk.Adjustment`. Jedná se o reprezentaci hodnoty se spodní a horní mezí, spolu s přírůstkem kroku a stránky a s velikostí stránky. Vytvoří se jako `Gtk.Adjustment(hodnota, spodní_mez, horní_mez, přírůstek_kroku, přírůstek_stránky, velikost_stránky)`, kde všechny údaje jsou typu `float`. (Poznamenejme, že v tomto případě není `přírůstek_kroku` použit, takže může být nastaven na `0`.)

# Odkazy k API

V této ukázce se používá následující:

GtkScrolledWindow

Standardní výčtové konstanty

GtkImage