问题标签 [pygobject]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 在 Gtk 3 中向工具按钮添加图标
有没有办法将图标添加到 Gtk.ToolButton(Gtk3 using PyGi for Python)以添加到 GTK+3 工具栏?
下面是我的代码:
注意:该get_resource()
方法挖掘资源路径的本地工作文件夹,并且假定此方法在此上下文中工作。
我使用 PyGi 尝试了上面编写的代码。图像文件有效,一切正常,但图像没有出现。
python - 在由 RadioMenuItems 组成的菜单中(错误地)选择了多个项目
在我的小型 PyGObject/GTK3 应用程序中,我尝试创建一个由RadioMenuItem
s 组成的(子)菜单。
我在主窗口中创建如下菜单__init__
:
然后在button_press_event
处理程序中使用
当我第一次打开菜单时,菜单项“2”是唯一选择的。当我然后 - 例如 - 选择菜单项“3”并再次打开菜单时,菜单项 2 和 3 都被选中。我究竟做错了什么?
python - 如何将 Gtk.StatusIcon 设置为文本
我想用自定义文本创建一个 Gtk.StatusIcon 。理想情况下,我想将其附加到现有图像中,但纯文本也可以。我怎样才能做到这一点?
我看过一些关于获取 Gtk.Label 的 pixbuf 的帖子,但这些方法似乎已从 Gtk3 中删除(pixbuf_get_from_drawable)
python - 在 PyGObject 中使用 GtkSourceView 从 Glade 加载 GUI
我正在尝试使用在 PyGObject 中具有 GtkSourceView 小部件的 Glade 文件。我写了一个关于如何开始在 Glade 中使用新的 GtkSourceView 3.0 的小指南:http: //cjenkins.wordpress.com/2012/05/08/use-gtksourceview-widget-in-glade/
问题是当我想从 PyGObject 加载 Glade 时:
当我运行该文件时,出现此错误:
Glade 文件 (test.glade) 只是一个带有 GtkSourceView 小部件的窗口:
我现在不知道如何解决这个问题。我想我需要在调用 add_from_file() 之前注册某种类型,不是吗?欢迎任何想法。
我正在使用:
- Ubuntu 精确 12.04
- 林间空地 3.12.0
- libgtksourceview 3.0
- gtk+ 3.0
亲切的问候
python - 迁移到 pygobject、glade 和 gtk3 时使用条目组合框
自 3 个月以来,我使用 glade 和 pygtk 在 python 中进行开发,但即使在我有时间习惯它之前,它已经过时了。
使用 Archlinux,我的系统不断更新,所以我不得不使用 gtk3,即使我发现它与 gtk2 相比有点缺乏功能。
所以我决定改用pygobject。不幸的是,文档并不完整。
我成功地将我的 glade 文件和我的 python 代码升级到了新系统,但仍然存在一个错误。
在我的一个程序中,我有一个带有条目的组合框。我使用调用 get_active_text() 方法来获取条目的内容,无论它是从组合框中选择的还是由用户输入的。
这种方法不再存在(我想,因为它给了我一个错误)所以我改用它:
如您所见,旧代码已被注释。
此代码有效,但我有一个奇怪的问题:我无法使用该条目!
我可以从组合框中选择文本,但该条目不可用。我可以选择,但我不能输入它。
这是我需要在某处激活的新行为吗?使用gtk2版本的程序,我没有任何问题。
这是我的林间空地文件中描述组合框条目的部分:
我创建了一个列表存储,其中包含一列 gchararray 类型的文本。单元格由 GtkCellRenderer 渲染(但未定义 cellrenderer 的属性“文本”,因为如果我将其定义为 0(gchararray),我会得到两次文本!)
我认为添加入口缓冲区会有所帮助,但它不会改变任何东西。
编辑:我找到了解决方案:can_focus 对于嵌入式条目是错误的。现在它可以工作了,不需要入口缓冲区。
我在发布之前找到了解决方案,但我发布它以防其他用户也有这个问题。
python - Gtk.Treeview 通过信号和代码取消选择行
我正在使用 PyGObject 但我认为这是一个可以适用于所有 GTK 的问题,所以如果有人知道如何使用 C 或任何东西也应该在 python 中工作。
我有两个树视图,活动和非活动,我从 Sqlite 数据库加载数据,我可以交换和拖放项目从一个到另一个。这只是一个美学的事情,如果我单击一个树视图上的一个项目,我希望取消选择另一个之前选择的项目。
似乎没有人必须做类似的事情,因为我在网上没有找到任何关于它的信息。
python - 如何在 Python 中使用 Gtk3 GtkTreeRowReference
我试图调用 Gtk3 的GtkTreeRowReference()
函数但没有成功。我正在尝试ListStore
使用关联的 TreeView 选择设置为 MULTIPLE 模式从 a 中删除多条记录。我想为选择中指向TreeRowReference
的每个项目保存一个并使用它们来删除项目,因为这些路径应该随着选择中较早到达的 ListStore 项目被删除而更新。我在 PyGtk 2 中找到了很多关于 using 的参考,PyGObject 的教程提到了它们的使用,但没有给出实际示例。我尝试了很多方法来调用但没有成功。例如:ListStore
ListStore
TreeRowReferences
GtkTreeRowReference()
产生此致命错误消息:"TypeError: function takes at most 0 arguments (2 given)"
当我的程序运行时Gtk.TreeRowReference
。选择中的行已经包含对 的引用ListStore
,因此仅使用选择行作为参数再次尝试,但这只是抱怨该函数仍然坚持使用 0 个参数,而我曾尝试向其传递 1 个参数。
我也尝试过这样的事情:
这些努力激怒了 Python 抱怨对"AttributeError: 'ListStore' object has no attribute 'GtkTreeRowReference'."
的调用变体TreeRowReference
, Gtk_TreeRowReference
并且其他几个变体产生了相同的错误消息。
谁能给我一个关于如何Gtk.TreeRowReference
在 PyGObject/Gtk3 中使用的线索?作为一个相对较新且经验不足的 Python 程序员,也是 Gtk 的新手,毫无疑问,我忽略了一些非常明显的东西,但即使经过大量互联网搜索,我也感到难过。