【问题标题】:Is there any way i can convert .glade files to executable?有什么办法可以将 .glade 文件转换为可执行文件?
【发布时间】:2013-10-08 19:02:24
【问题描述】:

我一直在使用 Glade 为我的 Bash 脚本制作 GUI。 无论如何我可以将 .glade 文件转换为 Linux 的可执行文件吗?

【问题讨论】:

  • 是的。你试过什么?
  • 好的,所以我尝试了“另存为 GtkBuilder”选项,并采用其他网站告诉我的 .xml 格式,这让我无处可去。然后我搜索了“如何将 .glade 转换为执行格式 linux”也没有任何帮助。
  • 这里是在 C 中使用 GtkBuilder UI 文件的示例:developer.gnome.org/gtk3/stable/ch01s04.html
  • 好的,所以我试了多次,它的措辞,但是我想把我的 .glade 文件变成一个执行文件,我该怎么做?

标签: linux bash user-interface gtk glade


【解决方案1】:

你不能。

Glade(或 GtkBuilder)只是 UI 的描述,它被一个(在 C 中使用 Gtk3)GtkBuilder 对象解析,然后根据 UI xml 描述在运行时创建你的小部件。它不会生成任何(某些回调/模型视图连接除外)应用程序逻辑。

【讨论】:

  • 所以我不能对 glade 文件做任何事情来使 GUI 可运行?
  • 你认为这应该如何工作,按钮应该如何知道它应该对 UI 的其余部分产生什么影响?编写 python、C、ruby 或任何程序。这并不难。只需花几个小时,坐下来阅读教程。
  • 我之前尝试过python,但我从来没有真正获得过任何成功,但是我尝试过C#,它更好理解,但过了一会儿我就感到困惑了。 Ruby 我听说过,我会对其进行一些研究,看看效果如何。
  • 不要退缩 - ruby​​ (afaik) 的状态根本就不好。选择一个并坚持下去。
  • 是的,刚开始接触python,好久没上这个网站了,目前喜欢python
【解决方案2】:

@drahnr 有正确的答案:让 glade 文件“可运行”的方法是编写使用它的代码。我只会提到zenity,以防这对您的用例来说已经足够好了——它允许创建简单的对话框,并且可以是一种为脚本创建非常简单的 UI 的快速方法:

entry=$(zenity --entry \
               --title="Info needed" \
               --text="Enter a value:" \
               --entry-text "Default value")
echo "return value was $?";
echo "entered value was $entry";

请注意,与实际代码相比,可能性非常有限。

【讨论】:

  • 我之前试过zenity,一个窗口不能有多个对话框,drahnr是对的,我给ruby一个镜头。
猜你喜欢
  • 2022-07-15
  • 2015-07-26
  • 1970-01-01
  • 1970-01-01
  • 2010-11-14
  • 2011-09-04
  • 1970-01-01
  • 1970-01-01
  • 2022-08-17
相关资源
最近更新 更多