Fedora上的ruby gtk安装问题
我最近想在我的Fedora15机器上安装Ruby绑定。我用Fedora上的ruby gtk安装问题,ruby,user-interface,gtk,Ruby,User Interface,Gtk,我最近想在我的Fedora15机器上安装Ruby绑定。我用yum(ruby-gtk2,ruby-gtk2-devel,诸如此类)安装了所有的软件包,当我尝试在ruby中执行一个简单的Hello-World GUI应用程序时,出现了一个名称错误。代码如下: require 'gtk' window = Gtk::Window.new(Gtk::WINDOW_TOPLEVEL) button = Gtk::Button.new("Hello World") window.set_title("H
yum
(ruby-gtk2
,ruby-gtk2-devel
,诸如此类)安装了所有的软件包,当我尝试在ruby中执行一个简单的Hello-World GUI应用程序时,出现了一个名称错误。代码如下:
require 'gtk'
window = Gtk::Window.new(Gtk::WINDOW_TOPLEVEL)
button = Gtk::Button.new("Hello World")
window.set_title("Hello Ruby")
window.border_width(10)
# Connect the button to a callback.
button.signal_connect('clicked') { puts "Hello Ruby" }
# Connect the signals 'delete_event' and 'destroy'
window.signal_connect('delete_event') {
puts "delete_event received"
false
}
window.signal_connect('destroy') {
puts "destroy event received"
Gtk.main_quit
}
window.add button
window.show_all
Gtk.main
首先,您希望拉入
gtk2
而不是gtk
,因此将require
更改为:
require 'gtk2'
然后,从:
Gtk::Window.new(type=Gtk::Window::TOPLEVEL)
创建一个新的Gtk::Window
,它是一个顶级窗口,可以包含其他小部件
因此,当需要顶级窗口时,实际上不需要指定类型
,但如果要指定类型
,则需要使用Gtk::window::toplevel
常量而不是Gtk::window\u toplevel
:
window = Gtk::Window.new(Gtk::Window::TOP_LEVEL)
这几乎耗尽了我(目前)对Ruby Gtk绑定的知识,但希望它能让你朝着正确的方向前进。在
window=Gtk::window.new
…我仍然得到这个Gtk.rb:3:未初始化常量Gtk::window\u顶级(NameError)
不幸的是