2016-05-02 1 views
0

J'apprends à utiliser glade 3 pour créer une interface graphique.comment utiliser le fichier glade xml pour créer un programme exécutable

Cependant, le fichier * .glade est un fichier xml. Je ne suis pas sûr de savoir comment aller de l'avant. La recherche Google n'aide pas vraiment. Il y a une question déjà posée pour la même chose ici Tool to convert .Glade (or xml) file to C source. Cependant, je ne suis pas vraiment capable de comprendre la réponse donnée à cela.

Quelqu'un peut-il dire le flux de base du cycle de développement en utilisant glade 3?

  1. Conception de l'interface utilisateur dans la clairière.
  2. Générez le fichier * .glade xml.
  3. ET PUIS QUOI ????

Comment le fichier XML peut-il être converti en un exécutable?

A. Dois-je convertir ce fichier XML en langage (C) et compiler le code C?

B. Ou y a-t-il un moyen de convertir directement le code XML en un exécutable ELF? J'essaye de faire l'interface graphique pour mon propre usage. J'utilise linux et je veux un exécutable ELF (comme ce que j'obtiendrais si j'écrivais le code C en utilisant la bibliothèque gtk et le compilais en utilisant gcc).

+1

Bienvenue dans Stack Overflow! Vous avez posé cette question il y a 17 minutes au moment d'écrire ce commentaire. Stack Overflow est un site web; tout le monde ne le regarde pas à toutes les heures, donc vous devrez être patient pour avoir une réponse. Quoi qu'il en soit, les fichiers glade sont exactement ce à quoi ressemble l'interface utilisateur. Vous devez écrire du code en utilisant la boîte à outils GTK + pour utiliser le fichier glade. Vous pouvez utiliser C ou toute autre langue que vous aimez. La classe que vous utilisez pour charger le fichier Glade dans GTK + 3 est GtkBuilder. (Je ne sais pas à propos de GTK + 2.) Vous pouvez également utiliser GResource, une partie de GLib, pour intégrer le xml dans votre binaire. Bonne chance! – andlabs

+0

@andlabls oui c'était juste un commentaire écrit par frustration sur tout le googling infructueux et le manque apparent de howtos un-obscur ... merci pour les pointeurs ..peut-être je vais regarder dans GtkBuilder et GResource ... mais pour l'instant je Je vais écrire le code moi-même ... Je reviendrai à la clairière plus tard ... – sps

Répondre

0

Si nous regardons the Wikipedia page for Glade il a une section entière sur l'utilisation de Glade dans un programme: avec GtkBuilder. Maintenant tout ce qui reste est de lire the docs et vous pouvez commencer à utiliser Glade. Sans vouloir offenser, mais je n'ai jamais utilisé Glade auparavant et c'est assez clair dans tous les docs. Par exemple, voici Glade's homepage.

0

je ferais quelque chose comme ceci:

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(); 
} 

Notez que cette Gtkmm 3+.

Il est important de ne pas cocher la case que vous avez trouvée dans le fichier Glade, vous pouvez donc l'attacher à votre fenêtre dérivée.