如何将关键事件发送到webkit.WebView()控件?

时间:2011-07-22 21:12:11

标签: python keyboard gtk

我为触摸屏创建了迷你浏览器。我使用过Python,GTK和WebKit。我想创建内置浏览器的触摸键盘。如何将关键事件发送到webkit.WebView()控件?

我的代码:

#!/usr/bin/python
import webkit, gtk
window = gtk.Window()
browser = webkit.WebView()
window.add(browser)
window.show()
browser.show()
browser.load_uri("http://google.com")
window.fullscreen()
window.connect("delete-event", gtk.main_quit)
window.set_title("Dashboard")
gtk.main()

抱歉我的英语不好......

2 个答案:

答案 0 :(得分:2)

你可以这样做:

event = gtk.gdk.Event(gtk.gdk.KEY_PRESS)
event.keyval = gtk.keysyms.Return
event.time = 0
browser.emit('key-press-event', event)

例如,要发送 Enter 键,请按

答案 1 :(得分:0)

您必须在代码中使用javascript,在此页面上有一个与webkit通信的好例子:

http://www.aclevername.com/articles/python-webgui/

阅读全部内容以了解他的逻辑。基本上他使用一个简单的javascript通过浏览器中的titlechange发回数据。