如何使用glade xml文件制作可执行程序

时间:2016-05-02 00:34:05

标签: c xml gtk glade

我正在学习使用glade 3来创建GUI。

但是,* .glade文件是一个xml文件。我不知道如何从这里前进。谷歌搜索并没有真正帮助。这里有一个问题已经问过Tool to convert .Glade (or xml) file to C source。但是我真的不能理解那里给出的答案。

有人可以使用glade 3告诉开发周期的基本流程吗?

  1. 在林间空地设计用户界面。
  2. 生成* .glade xml文件。
  3. 然后那是什么????
  4. 如何将xml文件转换为可执行文件?

    一个。我应该将此xml文件转换为语言(C)并编译C代码吗?

    B中。或者有没有办法将xml代码直接转换为ELF可执行文件?

    我正在尝试将GUI用于我自己的用途。我使用linux并想要一个ELF可执行文件(就像我使用gtk库编写C代码并使用gcc编译它时我会得到的)。

2 个答案:

答案 0 :(得分:0)

如果我们看一下the Wikipedia page for Glade,它有一个关于如何在程序中使用Glade的整个部分:使用GtkBuilder。现在剩下的就是阅读the docs,你就可以开始使用Glade了。没有冒犯,但我之前从未使用过Glade,这在所有文档中都相当清楚。例如,这里是Glade's homepage

答案 1 :(得分:0)

我会做这样的事情:

DerivedWindow::DerivedWindow()
{
  mainBox = Gtk::manage(new Gtk::Box(Gtk::ORIENTATION_VERTICAL, 7));
  builder = Gtk::Builder::create();
  try {
    builder->add_from_file("filename.glade");
  } catch (Glib::Error& ex) {
    errMsg("Window Builder Failed: " + ex.what());
  }

  Gtk::Box* box;
  builder->get_widget("name of box inside main window", box);
  if (!box) { this->destroy_(); return; }

  box->unparent();
  mainBox->pack_start(*box, Gtk::PACK_SHRINK);

  //optional - if you want full access to particular widgets
  builder->get_widget("name of widged id", widgetname);

  //connect signals here...

  add(*mainBox);
  show_all();
}

注意这是Gtkmm 3 +。

重要的是你从glade文件中取消选中框,这样你就可以将它附加到派生窗口。