[ruby-gnome2-doc-cvs] [Hiki] create - tut-treeview-model-data

Back to archive index

ruby-****@sourc***** ruby-****@sourc*****
2004年 5月 14日 (金) 11:14:24 JST


-------------------------
REMOTE_ADDR = 217.255.28.98
REMOTE_HOST = 
        URL = http://ruby-gnome2.sourceforge.jp/de/?tut-treeview-model-data
-------------------------
= Wie die Daten in einem Store aufgebaut sind
{{link "tut-treeview-model", "tut-treeview-model", "tut-treeview", "tut-treeview-model-reference"}}

Ein Modell (Data Store) besteht aus Spalten und Zeilen. W臧rend ein Gtk::TreeView-Widget jede Zeile des Modells als eine Zeile in der Ansichtskomponente darstellt, dfen die Spalten des Modells nicht mit den Spalten der Ansichtskomponente verwechselt werden. Eine Spalte in dem Modell repr舖entiert ein bestimmtes Datenfeld mit einem Wert von einem festgelegten Datentyp. Sie msen wissen, welche Art von Daten Sie in dem Modell ablegen mhten, wenn Sie das Modell (Gtk::ListStore oder Gtk::TreeStore) erstellen. Sie knen sp舩er keine zus舩zlichen Felder mehr einfen.

Ein Beispiel: Wir mhten eine Dateiliste anzeigen. Dazu wden wir ein Gtk::ListStore-Objekt mit zwei Feldern erzeugen: Ein Feld enth舁t den Dateinamen (licherweise einen String), w臧rend das zweite die Dateigre enth舁t (licherweise ein Integerwert). Der Dateiname wird dazu in der Spalte mit dem Index 0 eingeft und die Dateigre dementsprechend in der Spalte mit dem Index 1. F jede Datei msen wir eine neue Zeile in dem Modell einfen und dessen Felder mit dem Dateinamen und der Dateigre beschreiben.

Die Ruby-Klasse (Object, Integer, Float, String, Hash, Gdk::Pixbuf, usw.) wird verwendet, um zu indizieren, um welchen Datentyp es sich bei den Inhalten einer Spalte handeln wird.

Hier ist ein Beispiel f die Erstellung von einem Gtk::ListStore-Objekt:

 list_store = Gtk::ListStore.new(String, Integer)

Dieser Code erstellt ein neues Listenmodell mit zwei Spalten. Die Spalte mit dem Index 0 enth舁t einen String un die Spalte mit dem Index 1 speichert einen Integerwert f jede Zeile in dem Modell. An diesem Punkt gibt es in dem Modell natlich noch keine Zeilen. Bevor wir mit dem Hinzufen von Zeilen anfangen, werden wir einen Blick auf die verschiedenen Wege zum Ansprechen einer bestimmten Zeile des Modells werfen.





ruby-gnome2-cvs メーリングリストの案内
Back to archive index