Skip to content
Related Articles

Related Articles

Improve Article
Python – Create window button in GTK+ 3
  • Last Updated : 03 Jun, 2020

GTK+ 3 is a free and open-source cross-platform widget toolkit for creating graphical user interfaces (GUIs). It is licensed under the terms of the GNU Lesser General Public License. Along with Qt, it is one of the most popular toolkits for the Wayland and X11 windowing systems. Let’s see how to create a window and a button using GTK+ 3.

Follow below steps:

  1. import GTK+ 3 module
  2. Create main window.
  3. Create Button.

we have to import the Gtk module to be able to access GTK+’s classes and functions.

Note: In IDE’s like Pycharm we can install a package named PyGObject in order to use GTK+ 3.

Code #1: Create an empty 200 x 200 pixel window.

import gi
# Since a system can have multiple versions
# of GTK + installed, we want to make 
# sure that we are importing GTK + 3.
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
# Creates an empty window.
window = Gtk.Window()
# Connecting to the window’s delete event
# to ensure that the application is terminated
# whenever we click close button 
window.connect("destroy", Gtk.main_quit)
# Display the window.


Code #2: Create a button

import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gtk
# Define our own newWindow class.
class newWindow(Gtk.Window):
    def __init__(self):
        # Call the constructor of the super class.
        # Set the value of the property title to Geeks for Geeks.
        Gtk.Window.__init__(self, title ="Geeks for Geeks")
        # Create a button widget, connect to its clicked signal
        # and add it as child to the top-level window.
        self.button = Gtk.Button(label ="Click Here")
        self.button.connect("clicked", self.on_button_clicked)
    # When we click on the button this method
    # will be called
    def on_button_clicked(self, widget):
        print("Geeks for Geeks")
win = newWindow()
win.connect("destroy", Gtk.main_quit)


 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up
Recommended Articles
Page :