问题标签 [gtk3]

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.

0 投票
3 回答
899 浏览

python - 带有 PyGObject 内省 Gtk+ 3 的 GenericTreeModel?

我正在尝试在 Python3 中基于 GenericTreeModel 编写自己的 Gtk+3-TreeModel,但我出现了这个错误:

AttributeError:“gi.repository.Gtk”对象没有属性“GenericTreeModel”

GenericTreeModel 是否已重命名?

提前致谢。

0 投票
1 回答
3889 浏览

python - 在 Gtk3 上使用 PyGObject 的 Webkit 线程

我正在尝试在与 gtk 的主线程不同的线程上加载 webkit 视图。

我看到了PyGTK、Threads 和 WebKit的例子

我稍微修改一下以支持 PyGObject 和 GTK3:

结果是一个空窗口,并且永远不会执行“睡眠后”打印。idle_add 调用不起作用。唯一的工作部分是在主线程上注释的调用。

0 投票
1 回答
848 浏览

python - 如何从条目完成中获取条目

我正在看这篇文章:https ://stackoverflow.com/a/2262200 ,我在编写的小东西中有一个非常相似的设置。我的问题是,一旦 entrycompletion 完成,并且输入框有 url,我如何从完成中获取该 url 到变量中?entry.get_text() 似乎不起作用,我尝试的其他一切似乎都给了我一个对象或地址。如果您不想点击,这里是来自上述链接的报价。

0 投票
5 回答
3200 浏览

cairo - 可滚动绘图区中的开罗

我在 Ubuntu 11.04 (Natty) 上使用 gtk+-3.2.4。我正在尝试使用 Cairo 绘制 GtkDrawingArea 并使绘图区域可滚动。代码运行没有错误,但没有完成绘图。我究竟做错了什么 ?

0 投票
1 回答
130 浏览

c++ - 处理分配更改回调中的警告

我有一个杂乱警告我无法摆脱。

在我的项目中,我有一个自定义布局,由几个 ClutterConstraint(s) 构建,它处理几个 ClutterBox(es)。

其中一个 ClutterBox 包含许多 ClutterTexture,并以手工布局放置在其中。为了获得那个(手工布局),我曾经g_signal_connect连接过“allocation-changed”通知,在他的回调中我写了所有的放置逻辑。

运行时出现的警告是"Clutter-WARNING **: The actor 'ClutterBox' is currently inside an allocation cycle; calling clutter_actor_queue_relayout() is not recommended".

有人可以建议我如何避免这个警告?

0 投票
1 回答
162 浏览

gnome - 对话不会在 Vala 结束

dialog.run()出于某种原因,即使通过标准调用显示,我的程序中的对话框也不会关闭。它们显示并返回代码,但按钮不会关闭它们。这是发生这种情况的一些代码:

一切都很好,只是返回代码后对话不会关闭。与 相同AboutDialog。不过,在 Python 中一切正常。

0 投票
1 回答
11248 浏览

gtk3 - 如何在 Gtk+3 中设置背景颜色 GtkBox?

我在 GTK+3 中创建应用程序,我想更改背景颜色,GtkBox但不能在这里代码:

0 投票
1 回答
384 浏览

python - 可以在 Gtk3 应用程序中使用旧的 Gtk2 小部件吗?

我正在开发一个新界面,但它依赖于仅适用于 Gtk2 的自定义小部件。

有一种方法可以同时使用这两个版本,还是我必须使用 Gtk2 重写我的应用程序?

0 投票
1 回答
182 浏览

user-interface - 用于交互式项目列表的 Gtk 容器

在这里找不到合适的容器来表示屏幕上的任务列表时遇到了麻烦。

基本上,我正在寻找 Gtk 容器以便能够:

a) 创建任务列表,如“Tasque”(这绝对是可能的,因为 Tasque 是一个 Gtk 应用程序)。

任务截图

b) 创建一个“删除/编辑”选项,当鼠标指针悬停在任务左侧时(类似于 Basecamp)。(这可能是不可能的,因为它是通过 Basecamp 中的 HTML 完成的)。

大本营截图

非常感谢您的帮助!

0 投票
1 回答
5445 浏览

gtk - GTK+ 3.0:如何将 Gtk.TreeStore 与自定义模型项一起使用?

我正在尝试在 Python 中开发 GTK 应用程序,但我真的坚持正确使用gtk.TreeStore. 我的主要问题:我已经解析了一些 JSON,并且我有自己的数据结构,它基本上是一个 Python 列表和两种对象:一种表示项目集合(集合不能嵌套),另一种表示项目(它可能出现在列表中以及集合中)。

我已经熟悉 a 的基本用法TreeStore并设法在屏幕上正确呈现项目。我不知道如何处理树存储只能存储 gobject 类型的事实(此时我不确定,因为我对 gobject 类型系统了解不多)。C 的文档列出了以下(PixBuf 除外)可以插入并自动映射到 Python 数据类型的基本类型:

例如,gtk_tree_store_new(3, G_TYPE_INT, G_TYPE_STRING, GDK_TYPE_PIXBUF);将创建一个新的 GtkTreeStore,其中包含三列,分别为 int、string 和 GdkPixbuf 类型。

此外,它说您可以插入任何GType. 文档中的链接直接指向本段:

一个数值,表示已注册类型的唯一标识符。

我对该主题的研究到此结束,谷歌发现大部分是 GTK 2.x 教程,除了等之外,没有关于插入其他数据类型str的内容int
问题:

  • 是否可以实现新的 GType(或任何其他可以在树存储中插入自定义数据的接口)以及如何实现?
    我已经尝试过,GObject但没有帮助。

  • 如何摆脱同时保留两个数据结构?
    即我的解析结果和 Treestore 中的重复信息。

  • 如何处理混合内容?
    就我而言,我有具有不同附加信息的集合和项目(在树视图中镜像为有或没有子节点的节点)。

如果上述问题解决了,我在处理选择时也摆脱了这个问题:很难匹配一个简单的类型str或者int匹配我之前插入的一个项目。这样的属性必须是一个键,你仍然会用解析结果搜索列表,这是无效的。

先感谢您!

与问题没有直接关系的其他信息:


TreeModel在我阅读GTK 2 教程之前,我认为实现自定义可能是一个可行的挑战:

然而,所有这些都是有代价的:你不可能在不到一千行的时间内编写一个有用的自定义模型,除非你去掉所有的换行符。编写自定义模型并不像听起来那么困难,而且值得付出努力,尤其是因为如果您有大量数据需要跟踪,它会产生更清晰的代码。

这仍然有效吗?


我刚刚遇到http://www.pygtk.org/articles/subclassing-gobject/sub-classing-gobject-in-python.htm这有帮助吗?与 PyGTK 2.0 一样多的资源。已弃用。