【问题标题】:GTK file open dialog styleGTK 文件打开对话框样式
【发布时间】:2015-04-07 14:24:40
【问题描述】:

我使用 C 语言的 GTK 编写了一个便携式应用程序(在所有 Windows 版本和最近的 Linux 发行版上运行)。

出于可移植性的原因,我使用 GTK 的打开文件对话框功能,但我发现 GTK 对话框非常不实用。 有没有办法使用操作系统自己的对话框样式在 GTK 环境中打开/保存文件?

感谢您的帮助。

最好的问候, 文森特。

【问题讨论】:

  • 没有。 Linux 甚至没有 一个,所以你要么坚持使用 GTK+ 一个,要么为它导入 Qt 或其他东西。并且在 GTK+ 本身中没有用于公开 Windows API 文件对话框的 API。您可能可以使用一些 GDK 来破解一个,但我真的不知道如何做好它(而且它可能不会与 GTK+ 的其余部分配合得很好)...

标签: linux windows gtk


【解决方案1】:

在 Windows 上,您可以实例化 Windows 自己的文件选择对话框,并使用 Windows API 检索或设置您要查找的文件。

“Linux”不是一个平台,因此没有文件选择对话框。 GTK+ 有自己的文件选择对话框,就像 Qt 或任何其他工具包一样。

如果您重视跨平台的一致性,我的建议是使用 GTK 文件选择对话框;你可能不觉得它“实用”,但它已经很成熟了。

如果您重视平台的一致性,则必须在您所针对的每个平台上使用特定的文件选择对话框。 gedit 文本编辑器有一个包装类,它可以做到这一点:它使用特定于平台的 API,具体取决于它所运行的平台(MacOSLinux or Windows),并用 custom class 包装它。

【讨论】:

  • 使用一些依赖于平台的代码对我来说很好,只要它不是数百行代码。感谢您的出色回答,我会检查 gedit 是如何实现的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-12-11
  • 1970-01-01
  • 2013-05-12
  • 1970-01-01
  • 2022-01-23
  • 2011-02-04
  • 1970-01-01
相关资源
最近更新 更多