问题标签 [gtk-rs]

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 回答
1045 浏览

rust - 如何在 Rust / gtk-rs 中创建一个简单的 Gtk MessageDialog?

我正在尝试 gtk-rs,虽然肯定有可用的文档,但对于初学者来说太难理解了。我只看到了许多不同的 impls、traits 和泛型,但从来没有任何代码示例可供我学习。通常我会查看代码,使用它,然后逐行浏览它,以便我能够理解它。但这在这里是不可能的。

有人能帮帮我吗?

我曾经在 PyGTK 中编程,发现了一个旧的示例代码:

但是,我怎样才能在 Rust/gtk-rs 中做到这一点?我完全迷路了。

0 投票
0 回答
703 浏览

rust - 如何将按钮连接到 gtk-rs 中自定义 SimpleActionGroups 中的操作?

我想使用一个注册到处理 SimpleAction 的小部件的 SimpleActionGroup。但无论如何,以我的自定义前缀为目标的每个按钮都是灰色的,无法点击。但是,针对操作前缀“app”和“win”的按钮按预期工作。

带有两个按钮的应用程序

这是我的代码中定义我的自定义前缀的部分。

在这里,我用前缀“app”响应 SimpleActions

SimpleAction 本身应该没问题,因为如果我使用 GTK Inspector 启动应用程序,我可以激活它。

GTK Inspector 调用动作

那么我错过了什么,第二个按钮没有变灰并响应我的 SimpleAction?

这是完整的代码:

0 投票
2 回答
421 浏览

gtk3 - 如何使用 GTK 将按键事件发送到非活动条目

我有一个带有两个元素的 GTK 窗口,一个用作搜索输入的条目和一个显示搜索结果的列表框。当 ListBox 具有焦点时(例如,用户使用箭头键导航它)我想将他们所做的任何字符键按下指向搜索输入条目而不是 ListBox。

对于重定向某些 GTK 事件的目标或任何其他处理这种情况的方法,我将不胜感激。我正在使用 gtk-rs,但我想任何语言的 GTK 解决方案都足以让我继续下去。

谢谢!

0 投票
1 回答
288 浏览

rust - 如何在 gtk-rs 中监听剪贴板“所有者更改”事件?

我正在编写一个基于gtk::Clipboard使用 gtk-rs crate 的应用程序。我已经初始化了一个Clipboard这样的:

它可以通过使用clipboard.wait_for_text()循环打印选定的文本。

但是,我只需要在选择更改时文本。如何将处理函数连接到owner-change从发出的事件clipboard

在 Python 中,可以这样实现

0 投票
2 回答
360 浏览

rust - 为什么在闭包中克隆数据不能防止“闭包可能比当前函数寿命更长”的错误?

我用 gtk-rs 构建了一个 GTK 应用程序。当我构建主窗口时,我想使用一些动态参数,例如窗口高度。我创建了一个包含所有此类设置的结构,并希望将其用作构建 UI 的函数的输入参数:

我不能config在调用时使用引用,build_ui因为可以在主函数完成后调用此函数,因此配置结构不再存在。

我的想法是创建配置结构的副本(它只有几个原始变量),它与原始变量分开存在,因此我不会遇到生命周期或所有权问题。

这是正确的方法吗?我究竟做错了什么?我得到了与借用配置结构相同的错误:

0 投票
1 回答
639 浏览

rust - 如何使用 gtk-rs 在列表存储/树视图中右对齐数字数据

在此处输入图像描述

我最近一直在学习使用 gtk-rs 制作简单的 GUI,但遇到了一个问题,即数字数据在列表存储/树视图中左对齐,我希望它右对齐。

下面的代码是从这里修改的:https ://github.com/gtk-rs/examples/blob/master/src/bin/list_store.rs

通过使用“.set_alignment”,我已经能够使列标题居中(日期)和右(人口和区域),但无法更改数据本身的对齐方式。

字符串数据很容易操作(我在日期项目中嵌入了一个选项卡,它排列得很好。但是,如果我将人口和区域数据更改为格式化字符串,它们将在单击列标题时按此排序,而不是作为数字。

非常感谢任何和所有帮助!

货物.toml:

修复:renderer.set_alignment(1.0, 1.0);

好结果: 在此处输入图像描述

编译器错误: 在此处输入图像描述

0 投票
2 回答
644 浏览

cairo - 显示多个叠加的小部件

我正在尝试显示多个相互重叠的 cairo 图纸:

运行这段代码给了我这个警告:

我了解该overlay对象只能显示其中一个绘图区域。我认为这个overlay类正是为了这个目的,显示重叠的小部件。我找不到显示第二个重叠绘图区域的方法。

0 投票
0 回答
51 浏览

rust - 退出 gtk 应用程序没有合成效果

我想在一段时间后自动退出我的 gtk 应用程序。我该如何正确地做到这一点?我的问题是,当窗口关闭并且程序存在时,通过 compton 似乎没有窗口效果起作用,例如褪色。

这是我的代码:

connect_destroy_event甚至没有被调用,因为我没有收到打印消息。

0 投票
1 回答
114 浏览

rust - Assertion fails in g_application_parse_command_line whenever gtk application run multiple times

My Gtk-rs program crashes if I want to run a gtk application multiple times.

When ran, it goes thorough the first iteration in the for loop at the end but crashes the next time:

What's causing this and how can I prevent it?

0 投票
0 回答
126 浏览

rust - Gtk-rs 应用程序在 window.show_all() 函数处崩溃

每当我尝试调用该show_all()函数时,我的 Gtk-rs 应用程序就会崩溃。

在一个简单的应用程序窗口中,我添加了一个标题栏和一个标签。如果我在不添加标题栏的情况下进行编译,则窗口将正常工作并按预期显示标签。但是,如果我添加标题栏,窗口就会崩溃。

这是什么原因造成的?