IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

GTK+ avec C & C++ Discussion :

Iterator de Menu


Sujet :

GTK+ avec C & C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 19
    Par défaut Iterator de Menu
    Bonjour,
    j'ai un peu de mal avec les strutures de Menu, MenuItem et les Menu_Helpers etc...
    J'aurais besoin de recuperer un MenuItem dans une MenuBar (générée par glade ) pour y ajouter un fils et tout ce qui va avec.

    Donc je pars de :
    /* Gtk::Menu_Helpers::MenuList::iterator iter = bar->items().begin();
    for ( ; iter != bar->items().end(); iter++) {
    //Test
    }
    */
    Et dans mon test je sais pas en quoi caster l'iterator et comment récuper un menuItem par son nom...

    Any idea ?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 19
    Par défaut
    ok j'ai trouvé, si ca peut aider :
    Gtk::Menu *menuItemImport_menu;
    Gtk::MenuItem * menuItemLoad;
    Gtk::Menu_Helpers::MenuList::iterator iter = bar->items().begin();
    for ( ; iter != bar->items().end(); iter++) {
    cout << "Menu Name " << iter->get_name() << endl;
    if( iter->get_name() == "file")
    {
    Gtk::Menu *menuFile = iter->get_submenu();
    if( iter ->has_submenu())
    {
    cout << "subMenu " << menuFile->get_title();

    Gtk::Menu_Helpers::MenuList::iterator iterFile = menuFile->items().begin();
    for ( ; iterFile != menuFile->items().end(); iterFile++) {
    cout << "Item Name " << iterFile->get_name() << endl;
    if ( iterFile->get_name() == "import")
    {
    menuItemImport_menu = Gtk::manage(new class Gtk::Menu());
    iterFile->set_submenu(*menuItemImport_menu);
    menuItemImport_menu->items().push_back(Gtk::Menu_Helpers::StockMenuElem(Gtk::StockID("Load 3ds")));
    menuItemLoad = (Gtk::MenuItem *)&menuItemImport_menu->items().back();
    menuItemLoad->show();
    menuItemLoad->signal_activate().connect(sigc::mem_fun(this, &Import3ds::open3ds));

    }
    }
    }
    }
    }

Discussions similaires

  1. TreeView et menu contextuel...
    Par agh dans le forum Composants VCL
    Réponses: 6
    Dernier message: 06/04/2009, 12h23
  2. Réponses: 10
    Dernier message: 15/07/2008, 14h35
  3. Réponses: 0
    Dernier message: 11/07/2008, 12h30
  4. [système] Comment ajouter un item dans le context menu de Windows ?
    Par ddmicrolog dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 29/06/2005, 17h03
  5. Menu en GL
    Par Kaïn dans le forum OpenGL
    Réponses: 2
    Dernier message: 06/05/2002, 11h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo