Spinner (Python) Marta Maria Casetti mmcasetti@gmail.com 2012 스피너 애니메이션 조성호 shcho@gnome.org 2017 Spinner

이 스피너는 스페이스바를 누르면 회전 동작을 멈추거나 시작합니다.

예제 결과를 만드는 코드 from gi.repository import Gtk from gi.repository import Gdk import sys class MyWindow(Gtk.ApplicationWindow): # a window def __init__(self, app): Gtk.Window.__init__(self, title="Spinner Example", application=app) self.set_default_size(200, 200) self.set_border_width(30) # a spinner self.spinner = Gtk.Spinner() # that by default spins self.spinner.start() # add the spinner to the window self.add(self.spinner) # event handler # a signal from the keyboard (space) controls if the spinner stops/starts def do_key_press_event(self, event): # keyname is the symbolic name of the key value given by the event keyname = Gdk.keyval_name(event.keyval) # if it is "space" if keyname == "space": # and the spinner is active if self.spinner.get_property("active"): # stop the spinner self.spinner.stop() # if the spinner is not active else: # start it again self.spinner.start() # stop the signal emission return True class MyApplication(Gtk.Application): def __init__(self): Gtk.Application.__init__(self) def do_activate(self): win = MyWindow(self) win.show_all() def do_startup(self): Gtk.Application.do_startup(self) app = MyApplication() exit_status = app.run(sys.argv) sys.exit(exit_status)

Gdk.keyval_name(event.keyval)event.keyval 키 값을 심볼릭 이름으로 변환합니다. 이름과 관련 키 값은 여기에서 알아볼 수 있지만, 예를 들어 GDK_KEY_BackSpace 인스턴스는 "BackSpace" 문자열입니다.

API 참고서

이 예제는 다음 참고자료가 필요합니다:

GtkSpinner

Key Values