Я продолжаю получать ошибку «неинициализировать GLib :: Object» из моего кода.
Вот код:
class MainWindow < Gtk::Window
def initialize
title = "I'm The Title Of An Application! Yay!"
border_width = 10
set_size_request(600, 300)
signal_connect("destroy") { Gtk.main_quit }
@vbox = Gtk::VBox.new(false, 10)
add(@vbox)
show_all
end
end
main_window = MainWindow.new
С этим я получаю ошибку
in `set_size_request': uninitialize GLib::Object
Поэтому я перевожу этот кусок кода за пределы класса следующим образом:
main_window = MainWindow.new
main_window.set_size_request(600, 300)
Тогда я получаю:
in `signal_connect': uninitialize GLib::Object
Так что я изменил его так, чтобы мой класс и переместил метод 'signal_connect' за пределы класса с помощью set_resize_request, который выглядит следующим образом:
main_window = MainWindow.new
main_window.set_size_request(600, 300)
main_window.signal_connect("destroy") { Gtk.main_quit }
И это дает мне:
in `add': uninitialize GLib::Object
Gwar! Я изменил это еще раз ...
main_window = MainWindow.new
main_window.set_size_request(600, 300)
main_window.signal_connect("destroy") { Gtk.main_quit }
main_window.add(@vbox)
А теперь это?!
in `show_all': uninitialize GLib::Object
Итак, еще раз, я удаляю метод из класса и помещаю его вне класса
main_window = MainWindow.new
main_window.set_size_request(600, 300)
main_window.signal_connect("destroy") { Gtk.main_quit }
main_window.add(@vbox)
main_window.show_all
Может быть ... просто возможно, это сработает на этот раз, так что я надеюсь на лучшее и снова запустите код ...
in `set_size_request': uninitialize GLib::Object
Что ?! Что здесь происходит?