Created
December 17, 2012 23:19
-
-
Save marvin/4323385 to your computer and use it in GitHub Desktop.
python gtk examples
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from gi.repository import Gtk | |
class MyDemoApp(): | |
def __init__(self): | |
window = Gtk.Window() | |
window.set_title("My demo window") | |
window.set_default_size(500, 300) | |
window.set_position(Gtk.WindowPosition.CENTER) | |
window.connect('destroy', self.destroy) | |
button = Gtk.Button("Hit me!") | |
button.connect("clicked", self.button_clicked) | |
window.add(button) | |
window.show_all() | |
def button_clicked(self, window): | |
print 'Ouch! Dohh!' | |
def destroy(self, window): | |
Gtk.main_quit() | |
def main(): | |
app = MyDemoApp() | |
Gtk.main() | |
if __name__ == '__main__': | |
main() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from gi.repository import Gtk | |
import os | |
import sys | |
class PhotoApp(): | |
def __init__(self): | |
window = Gtk.Window() | |
window.set_title("Marvin PhotoApp") | |
window.set_default_size(500, 300) | |
window.set_position(Gtk.WindowPosition.CENTER) | |
window.connect('destroy', self.destroy) | |
box = Gtk.Box() | |
box.set_spacing(5) | |
box.set_orientation(Gtk.Orientation.VERTICAL) | |
window.add(box) | |
self.image = Gtk.Image() | |
box.add(self.image) | |
button = Gtk.Button("Open a photo ...") | |
button.connect("clicked", self.on_open_clicked) | |
box.add(button) | |
window.show_all() | |
def on_open_clicked(self, button): | |
dialog = Gtk.FileChooserDialog("Open Image", button.get_toplevel(), Gtk.FileChooserAction.OPEN) | |
dialog.add_button(Gtk.STOCK_CANCEL, 0) | |
dialog.add_button(Gtk.STOCK_OPEN, 1) | |
dialog.set_default_response(1) | |
filefilter = Gtk.FileFilter() | |
filefilter.add_pixbuf_formats() | |
dialog.set_filter(filefilter) | |
if dialog.run() == 1: | |
self.image.set_from_file(dialog.get_filename()) | |
dialog.destroy() | |
def destroy(self, window): | |
Gtk.main_quit() | |
def main(): | |
app = PhotoApp() | |
Gtk.main() | |
if __name__ == '__main__': | |
main() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# examples from redhat gtk page | |
from gi.repository import Gtk | |
class MyWindow(Gtk.Window): | |
def __init__(self): | |
Gtk.Window.__init__(self, title="Hello World") | |
self.button = Gtk.Button(label="Click Here") | |
self.button.connect("clicked", self.on_button_clicked) | |
self.add(self.button) | |
def on_button_clicked(self, widget): | |
print "Hello World!" | |
win = MyWindow() | |
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