使用 pygtk 和 Glade 的数据库表 GUI
我正在用 python 和glade 构建一个数据库前端。我需要在应用程序窗口中以数据库表的形式呈现 SQL 查询结果(模式后跟元组/记录)。模式和数据库条目都是动态的,因为模式可以是连接操作的模式,或者通常可以更改,并且元组的数量可以是任何有效的数字。一种可能的解决方案是使用 python 格式化给定的表,创建一个文本我的 GUI 中的对象并将其值更改为 python 生成的值。非常欢迎意见和建议。
I'm building a database front-end with python and glade. I need to present SQL query results in the form of database tables inside my app's window (schema followed by tuples/records). Both the schema and the database entries are dynamic because the schema could be that of a join operation or in general altered and the number of tuples could be any valid number.One possible solution could be to format a given table with python, create a text object in my GUI and change its' value to that produced by python. Advices and suggestions are very welcome.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
鉴于事先不知道要显示的列的数量和名称,您可以在glade 中创建一个
gtk.TreeView
小部件,并根据需要在应用程序代码中对其进行修改。可以使用 gtk.TreeView.set_model 更新此小部件以使用新模型,并且可以调整列以匹配要使用 gtk.TreeView 显示的信息。{append,remove,插入}_column 列。
关于模型,您可以根据数据库的结果创建一个具有适当列的新
gtk.ListStore
。我希望这有帮助。
Given that the number and name of the columns to display isn't known beforehand, you could just create a
gtk.TreeView
widget in glade and modify it as you need in the application code.This widget could be updated to use a new model using
gtk.TreeView.set_model
and the columns could be adapted to match the information to be dsplayed with thegtk.TreeView.{append,remove,insert}_column
columns.Regarding the model, you coud create a new
gtk.ListStore
with appropriate columns depending on the results from the database.I hope this helps.