Skip to content

Instantly share code, notes, and snippets.

@snj33v
Last active August 29, 2015 14:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save snj33v/8453ef1dfade33e26361 to your computer and use it in GitHub Desktop.
Save snj33v/8453ef1dfade33e26361 to your computer and use it in GitHub Desktop.
example using Gtk.MenuButton()
# !/usr/bin/python3
__author__ = 'sam'
from gi.repository import Gtk
class Window(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self)
self.set_default_size(400, 200)
self.set_default_geometry(400, 200)
hb = Gtk.HeaderBar()
hb.props.show_close_button = True
hb.props.title = "Click me"
self.set_titlebar(hb)
box = Gtk.Box(orientation=Gtk.Orientation.HORIZONTAL)
pmenu = Gtk.Menu()
pmenu.append(Gtk.MenuItem(label="lp"))
pmenu.append(Gtk.MenuItem(label="pl"))
mb = Gtk.MenuButton()
mb.set_popup(pmenu)
box.add(mb)
hb.pack_end(box)
self.count = 0;
self.button = Gtk.Button(label="count")
self.button.connect('clicked', self.onclick)
vbox = Gtk.VBox();
vbox.add(self.button)
self.add(vbox)
def onclick(self, widget):
self.count += 1
self.button.set_label('Clicked : ' + str(self.count) + ' times')
win = Window()
win.connect("delete-event", Gtk.main_quit)
win.show_all()
Gtk.main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment