From: Masao M. <mu...@hi...> - 2003-09-24 15:20:42
|
むとうです。 よくわかってないのですが、 Gnome::Canvas#set_scroll_region()を指定すると うまくいくようです。 On Wed, 24 Sep 2003 23:22:14 +0900 たむらけんいち <sgs...@ni...> wrote: > たむらです。 > CanvasGroup についてですが、以下のスクリプトを書いてみました。 > > require 'gtk2' > require 'gnomecanvas2' > > class CanvasWin < Gtk::Window > def initialize > super(Gtk::Window::TOPLEVEL) > self.signal_connect("delete_event"){ Gtk::main_quit() } > > canvas = Gnome::Canvas.new > canvas.set_size_request(800, 600) canvas.set_scroll_region(0, 0, 800, 600) #ここ > self.add(canvas) > > group = Gnome::CanvasGroup.new(canvas.root, {:x => 0.0, :y => 0.0 }) > Gnome::CanvasRect.new( group, {:x1 => 0.0, :y1 => 0.0, :x2 => 220.0, :y2 =>60.0, > :outline_color => "black", :width_units => 4.0 }) > Gnome::CanvasText.new( group, {:x => 98.0, :y => 32.0, :font => "Sans 22", > :text => "Ruby-GNOME2" }) > end > end > > Gtk.init > CanvasWin.new.show_all > Gtk.main > > 私としては、CanvasGroup.new で画面左上に置いたつもりが画面中央になります。 > sample/canvas-rich-text.rb も確かに中央を (0.0, 0.0) として配置されるようですが、 > sample/canvas-primitives.rb だと左上からになっているようです。canvas-primitives.rb を > 追ったのですが、座標指定のフラグなどがあるように思えません。 > > どなたかヒントを下さい。 -- .:% Masao Mutoh<mu...@hi...> |