From: Kazuhiro N. <zn...@mb...> - 2009-12-14 06:48:37
|
西山和広です。 http://ruby-gnome2.sourceforge.jp/hiki.cgi?Gtk%3A%3AMenuItem#Gtk%3A%3AMenuItem.new に | Gtk::MenuItem.new(label = nil, use_underline = true) | label: the text label to display next to the radio button. If nil, will act as a menu separator (inert horizontal line). と書いてありますが、label に nil を指定すると TypeError になります。 何も引数を指定しなければ期待通り separator になりました。 それから書いていて気付いたのですが、 inert は insert の typo のようです。 % cat gtk2-menu-item-nil.rb #!/usr/bin/ruby # -*- coding: utf-8 -*- require 'gtk2' menu = Gtk::Menu.new item = Gtk::MenuItem.new("Hello") item.signal_connect("activate") do |widget| puts "hello" end menu.append(item) #item = Gtk::MenuItem.new item = Gtk::MenuItem.new(nil) menu.append(item) item = Gtk::MenuItem.new("Quit") item.signal_connect("activate") do |widget| Gtk.main_quit end menu.append(item) menu.show_all icon = Gtk::StatusIcon.new icon.stock = Gtk::Stock::ABOUT # dummy icon.signal_connect("popup_menu") do |widget, button, activate_time| menu.popup(nil, nil, button, activate_time) end Gtk.main % ruby1.8 gtk2-menu-item-nil.rb gtk2-menu-item-nil.rb:11:in `initialize': can't convert nil into String (TypeError) from gtk2-menu-item-nil.rb:11:in `new' from gtk2-menu-item-nil.rb:11 % -- |ZnZ(ゼット エヌ ゼット) |西山和広(Kazuhiro NISHIYAMA) |