Не очень представляю себе реализацию
import threading
import time
from gi.repository import Gtk, GObject, GLib
class ProgressBarWindow(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title="ProgressBar")
self.set_border_width(20)
vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=6)
self.add(vbox)
self.progressbar = Gtk.ProgressBar()
vbox.pack_start(self.progressbar, True, True, 0)
self.show_all()
Gtk.main()
def on_activity(self, *args):
self.progressbar.set_fraction(args[0])
class TopWindow(Gtk.Window):
def __init__(self):
self = Gtk.Window()
self.s = ProgressBarWindow()
time.sleep(1)
GLib.idle_add(self.s.on_activity, 0.20)
self.set_border_width(5)
time.sleep(1)
GLib.idle_add(self.s.on_activity, 0.40)
self.connect("delete-event", Gtk.main_quit)
time.sleep(1)
GLib.idle_add(self.s.on_activity, 0.60)
self.set_default_size(150, 150)
time.sleep(1)
GLib.idle_add(self.s.on_activity, 0.80)
self.spinner = Gtk.Spinner()
self.spinner.start()
time.sleep(1)
GLib.idle_add(self.s.on_activity, 1.00)
self.add(self.spinner)
self.show_all()
myspinner = TopWindow()
Gtk.main()