Это мой код:
require "gtk3"
builder_file = "#{File.expand_path(File.dirname(__FILE__))}/example.ui"
builder = Gtk::Builder.new(:file => builder_file)
window = builder.get_object("window")
window.signal_connect("destroy") { Gtk.main_quit }
progressbar=builder.get_object("progressbar1")
progressbar.set_fraction(0.5)
button = builder.get_object("button1")
button.signal_connect("clicked") {
for i in(0..4)
sleep(1)
puts "query " + (i+1).to_s + " done"
a=(i+1)/5.to_f
puts a
progressbar.set_fraction(a)
end
}
Gtk.main
sleep
- это просто заполнитель для веб-запроса, который занимает около 1 секунды.Когда я выполняю этот код на моей машине, вывод на консоль в порядке, но индикатор выполнения остается пустым до тех пор, пока через пять секунд он не переполнится, а это не то, что мне нужно.Как я могу использовать индикатор выполнения?