python

Web前端开发QQ群 110939958-业余程序员

用Python调用glade

Python 2.6.5, glade 3.6.7

import pygtk
pygtk.require("2.0")

import gtk
import gtk.glade

class TestGlade:
	def destroy(self,widget,data=None):
		gtk.main_quit()
	def __init__(self):
		builder = gtk.Builder()
		builder.add_from_file('glade/gtk2.glade')
		self.mainwindow = builder.get_object('mainWindow')
		self.mainwindow.connect('destroy',self.destroy)
		button = builder.get_object('button')
		button.connect('clicked', self.click_event)
		self.mainwindow.show()

	def click_event(self, widget):
		widget.set_label('clicked')

	def main(self):
		gtk.main()

if __name__ == "__main__":
		window = TestGlade()
		window.main()

犯傻

有一天,突然明白了一个错误
当我在捣鼓Python 的 httplib 的时候, 我新建了一个文件 "httplib.py" 用来测试, 结果怎么都不行,告诉我该模块没有 "xxx" 方法...
突然想到, 会不会自定义模块的引入方法也是这样的: import httplib
于是赶紧改名, 果然好了. 如梦初醒啊.
以前纠结了N久的 pygtk 终于也复苏了

特此纪念python路上的经典低级错误

另, 还要记得把生成的.pyc清除