gpt4 book ai didi

linux - 在 GTK 中查找进程的所有打开窗口

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:29:34 25 4
gpt4 key购买 nike

GTK 中有没有通过特定进程打开所有当前窗口的方法?理想情况下,我希望能够获得 GtkWindow 实例。我知道 Java AWT 有这个:

java.awt.Window[] windows = java.awt.Window.getWindows();

而且微软的 UI Automation 也有办法获取应用程序的所有窗口。无论如何,有没有办法用 GTK 做到这一点?

我找到了一个函数 gtk_window_list_toplevels,但它似乎返回了太多的窗口。应用程序 gedit 在我的电脑上有 30 个顶级窗口。对于只有一个窗口的应用程序来说,这似乎太多了。

最佳答案

gtk_window_list_toplevels() 只为您提供进程中的窗口,但其中包括隐藏窗口。因此,如果您列出像 Gedit 这样的应用程序的顶层窗口,您可能会看到许多隐藏的首选项窗口、搜索对话框,并且可能还有许多与许多插件相关的其他窗口。先用您自己编写的一个简单的单窗口应用程序尝试一下,您会发现它只返回主窗口。

关于linux - 在 GTK 中查找进程的所有打开窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5306523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com