问题标签 [gio]

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 投票
1 回答
222 浏览

haskell - 如何使用 Haskell 和 GIO 读取文件?

例如,这是我使用 Haskell 和 gtk2hs 编写的一小段程序:

fileRead方法返回一个FileInputStream实例,但我无法在文档中的任何地方找到从中读取的方法。GIO中对应的C方法应该是g_input_stream_read,但是gtk2hs中好像没有实现。

我错过了什么吗?

0 投票
2 回答
1462 浏览

python - 如何使用 GtkStyleContext 获取小部件的 Gtk3 选择颜色

我正在尝试在 python 中获取 Gtk3 IconView 的选择颜色,但我很困惑如何解释现有的 C++ 文档以及它与 Python 的关系。

我目前的python代码如下:

这在 Ubuntu 12.04 中可以正常工作 - 我认为 Gnome/Gtk 3.2。

但是这里的文档说get_style自 3.0 以来已弃用

在使用最新 GTK 的 Ubuntu 12.10 中,上述方法不起作用 - 我收到错误消息:

该文件说我应该使用 GtkStyleContext - 但是如何?

谁能给我一个具体的python示例?

0 投票
1 回答
358 浏览

gnome - 在没有 GNOME 的情况下使用 glib gio GVolumeMonitor

我对 glib / gio GVolumeMonitor 有疑问。当我运行这段代码

在 gnome 中我得到一个有效的条目。

在 gnome 之外(例如在没有 gnome 会话的终端中)我得到一个 NIL。

有没有人提示如何正确使用 GVolumeMonitor?也许 gio 需要初始化,但我不知道该怎么做。

0 投票
2 回答
1496 浏览

python - 在尝试使用 GSettings 架构之前,如何确定它是否存在?

如果 GSettings 模式存在并且已经编译,那么读取它通常没有问题。但是,如果它不存在,通常会抛出无法处理的错误。在 Python 文件或控制台中试试这个:

我尽可能广泛地使用except,但这是引发的错误。

(进程:10248):GLib-GIO-ERROR **:未安装设置架构“com.example.doesnotexist”

我基本上想要做的是找出com.example.doesnotexist模式是否存在;如果没有,那么告诉用户在使用我的应用程序之前运行我的设置脚本。任何其他关于这样做的建议都将受到欢迎。

0 投票
2 回答
1079 浏览

python - 在 Gtk ScrolledWindow 中滚动时我应该捕捉哪些信号?

我正在为 Rhythmbox 开发一个 python 插件——它包含一个 GtkScrolledWindow 和一个子 GtkIconView。IconView 由 Gtk.TreeModel 提供。

它看起来像这样:

在此处输入图像描述

目前 - 并且有点低效,为树模型中的每一行绘制每个图标 - 每个图标都是来自文件的 GdkPixbuf。如果您有数千行,则整个图标视图可能需要很长时间才能完全更新每个图片图标。

我想要实现的是只更新当前绘图区域中的图标 - 当用户滚动并释放滚动条(或通过键盘导航)时,新绘图区域中的图标应该使用相关图片进行更新。

注意——此时树模型将被完全填充——只有图标不会被加载。

这不是我真正的专业领域 - 我正在寻找我应该用来实现上述目标的最佳方法的指针。

具体来说 - 可以公开哪个 Gtk+3 绘图区域信号(或多个信号)(Gtk.ScrolledWindow / Gtk.IconView ?)编写 python 代码来计算应该更新哪些图标?

0 投票
0 回答
336 浏览

linux - GIOChannel 不会检测到 G_IO_IN

我使用阻塞 IO(因为这似乎是向套接字写入大量数据的最简单方法)。

我想检测是否有任何数据要读取,所以我使用g_io_channel_get_buffer_condition(). 问题是它总是会回馈4,并且永远不会设置位1G_IO_IN

发送和接收在所有其他方面都很好。该对象是从 Unix 套接字创建的。我是否需要为此功能设置任何其他方面才能正确发出有字节可供读取的信号?

0 投票
2 回答
920 浏览

python - 如何使用自定义 CellRendererText 创建 Gtk Iconview

我正在研究如何在 Python(2.7 或更高版本)中创建一个 GtkIconView,该 GtkIconView 具有用于 IconView 的文本元素的自定义 CellRendererText。

这样做的原因是我需要在创建图标视图期间覆盖某些属性。

环顾四周,我发现了这个 PyGtk for TreeViews 的例子——类似,但我需要一个 IconView 的 Introspection 例子

我查看了 C++ 文档,但我真的不明白如何将 cellrenderertext 分配给 IconView。

我再次找到了一些 python 文档来为树视图创建自定义单元渲染器

谁能指出我正确的方向如何修改 IconView 的示例

0 投票
1 回答
1357 浏览

c - 为什么未设置 DBUS_SESSION_BUS_ADDRESS 时 g_file_copy 返回 Operation not supported

以下代码可以作为普通用户会话正常工作:

(取自glib-network-connection-example

但是当 'su -' 到另一个用户并执行相同的二进制文件时,我收到以下错误:

**** 消息:不支持操作**

strace转储如下:

我已将问题缩小到未设置 DBUS_SESSION_BUS_ADDRESS 变量。

我想知道为什么上述解决方案需要 dbus,因为在 glib/gio 文档中没有提到这一点,并且是否有不需要 dbus 的下载文件解决方案,或者,我可以将 DBUS_SESSION_BUS_ADDRESS 设置为可以做到的东西无论我如何切换到另一个用户的会话,都可以工作。

0 投票
1 回答
265 浏览

python - 如何使用 Gio 设置 HTTP 请求的用户代理?

我正在尝试使用 Gio 执行异步 HTTP 请求,并且我想为我的请求设置一个自定义用户代理,但我找不到任何相关内容。

我正在使用 PyGObject 访问 Gio,但我当然可以使用 C 示例。

0 投票
1 回答
978 浏览

python - 我使用 Gio GFile monitor_file 错了吗?

我正在像这样使用 Gio monitor_file 。

修改后的文件没有任何反应。Gio 适用于其他文件操作,如创建、读取和写入。

是我用错了,还是系统问题?

我的环境:Gtk graphics,Python,Linux Ubuntu 12.10,普通电脑。