The simplest GtkApplication Window which can support.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
from gi.repository import Gtk import sys # a Gtk ApplicationWindow class MyWindow(Gtk.ApplicationWindow): # constructor: the title is "Welcome to GNOME" and the window belongs # to the application app def __init__(self, app): Gtk.Window.__init__(self, title="Welcome to GNOME", application=app) class MyApplication(Gtk.Application): # constructor of the Gtk Application def __init__(self): Gtk.Application.__init__(self) # create and activate a MyWindow, with self (the MyApplication) as # application the window belongs to. # Note that the function in C activate() becomes do_activate() in Python def do_activate(self): win = MyWindow(self) # show the window and all its content # this line could go in the constructor of MyWindow as well win.show_all() # start up the application # Note that the function in C startup() becomes do_startup() in Python def do_startup(self): Gtk.Application.do_startup(self) # create and run the application, exit with the value returned by # running the program app = MyApplication() exit_status = app.run(sys.argv) sys.exit(exit_status)
set_default_size(200, 100) sets the default size of the window to a width of 200 and a height of 100; if instead of a positive number we pass -1 we have the default size.
set_position(Gtk.WindowPosition.CENTER) centers the window. Other options are Gtk.WindowPosition.NONE, Gtk.WindowPosition.MOUSE, Gtk.WindowPosition.CENTER_ALWAYS, Gtk.WindowPosition.CENTER_ON_PARENT.
In this sample we used the following:
Got a comment? Spotted an error? Found the instructions unclear? Send feedback about this page.