m3bik Posted December 6, 2011 Share Posted December 6, 2011 I'm new to python in general, but I have a python program that loads a web page. I'm using a slightly altered code I found at http://kmandla.wordpress.com/2010/05...rowser-script/ for a simple python gtk browser. I would like for when the user clicks a link on the page loaded in the python program to open in the actual browser (not the same program). I've found that "webbrowser.open" does this for certain things if I "import webbrowser" but I can't seem to make it happen when the user clicks a link.. #!/usr/bin/env python import sys import gtk import webkit import webbrowser DEFAULT_URL = 'http://www.google.com' class SimpleBrowser: # needs GTK, Python, Webkit-GTK def __init__(self): self.window = gtk.Window(gtk.WINDOW_TOPLEVEL) self.window.set_position(gtk.WIN_POS_CENTER_ALWAYS) self.window.connect('delete_event', self.close_application) self.window.set_default_size(350, 20) vbox = gtk.VBox(spacing=5) vbox.set_border_width(5) self.txt_url = gtk.Entry() self.txt_url.connect('activate', self._txt_url_activate) self.scrolled_window = gtk.ScrolledWindow() self.webview = webkit.WebView() self.scrolled_window.add(self.webview) vbox.pack_start(self.scrolled_window, fill=True, expand=True) self.window.add(vbox) def _txt_url_activate(self, entry): self._load(entry.get_text()) # I've tried replacing this with webbrowser.open(entry.get_text()) with no luck def _load(self, url): self.webview.open(url) def open(self, url): self.txt_url.set_text(url) self.window.set_title('%s' % url) self._load(url) def show(self): self.window.show_all() def close_application(self, widget, event, data=None): gtk.main_quit() if __name__ == '__main__': if len(sys.argv) > 1: url = sys.argv[1] else: url = DEFAULT_URL gtk.gdk.threads_init() browser = SimpleBrowser() browser.open(url) browser.show() gtk.main() Any help would be appreciated! Thanks! Link to comment https://forums.phpfreaks.com/topic/252555-python-gtk-browser/ Share on other sites More sharing options...
Alexander_john Posted March 1, 2012 Share Posted March 1, 2012 Hello, Well For my class, I was asked to make an on-screen keyboard that when you clicked a button, the letter would appear in an entry box above. I've done that, but the extension was to create a backspace button. Link to comment https://forums.phpfreaks.com/topic/252555-python-gtk-browser/#findComment-1322742 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.