ruby-****@sourc*****
ruby-****@sourc*****
2004年 4月 8日 (木) 01:59:12 JST
------------------------- REMOTE_ADDR = 80.137.231.102 REMOTE_HOST = URL = http://ruby-gnome2.sourceforge.jp/de/?tut-gtk-intro ------------------------- - = Getting Started + = Einleitung {{link "tut-gtk-preface", nil, "tut-gtk", "tut-gtk-helloworld"}} {{image_right("base.png")}} Als erstes m$B(Bsen sie nat$B(Blich Ruby-GNOME2 auf ihrem Computer installieren. Bitte lesen Sie sich eine unserer ((<Installationsanweisungen|Install Guide>)) durch. Wenn Ihr System noch nicht unterst$B(Bzt wird, laden Sie sich selbst das aktuelle Paket von SourceForge herunter, entpacken Sie es und lesen Sie die README-Datei f$B(B weitere Informationen. Um unseren Einstieg in GTK zu beginnen, werden wir mit dem einfachsten m$B(Blichen Program starten. Dieses Programm wird ein 200x200 Pixel gro$B_e(Bs Fenster und hat keine M$Bvg(Blichkeit, beendet zu werden, au$B_e(Br dem Abbrechen auf der Shell: require 'gtk2' Gtk.init window = Gtk::Window.new window.show Gtk.main Speichern Sie dieses Program in einer Datei namens base.rb und rufen Sie es auf mit: ruby base.rb Wir werden jetzt die einzelnen Schritte des Programms erkl$Bdr(Ben. Die erste Zeile bindet die Ruby/GTK2-Bibliothek in das Programm ein. require 'gtk2' Die zweite Zeile ruft Gtk.init auf, um die Ruby/GTK2-Bibliothek mit den $B|b(Bergebenen Shell-Parametern zu initialisieren: Gtk.init Die dritte Zeile benutzt die Methode Gtk::Window.new, um ein neues GTK-Fenster mit voreingestellten Parametern zu erstellen: * size: 200x200 * style: Gtk::Window::TOP_LEVEL * title: entspricht dem Programmnamen (hier: base.rb) window = Gtk::Window.new Die vierte Zeile ruft Gtk::Window#show auf, um das gerade erstellte Fenster-Objekt anzuzeigen: window.show Die letzte Zeilt springt in die GTK main-Schleife, die der Hauptausf$B|h(Brung dient: Gtk.main Gtk.main ist eine Anweisung, die Sie in jeder Ruby/GTK2-Anwendung wiederfinden werden. Wenn der Programmablauf diese Stelle erreicht, wird GTK auf XWindow-Ereignisse (wie Mausklicks oder Tastendr$B|c(Bke), Timeouts oder Benachrichtigungen $B|b(Ber Datei-E/A warten. In unserem Beispiel kommen diese Ereignisse allerdings noch nicht vor.