Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

TA-K-2-PT

[Résolu] Menus qui ne s'affichent pas GTK2.0

Messages recommandés

EDIT: Grosse grosse erreur de ma part je m'en excuse.Comme je suis sous linux, le menu s'affiche dans la barre noir tout en haut de l'écran et non pas ds la fenêtre du programme.C'est ceci qui m'a induit en erreur.Mon menu est bel et bien présent.

Encore désolé pour cette erreur bête, il faut le dire .........

 

 

Bonjour je code un petit éditeur de texte, j'en suis juste au début, et je rencontre déjà un problème.Les menus ne s'affichent pas.

Je code sous Ubuntu , avec codeblocks et j'utilise la bibliothèque GTK2.0.

 

Mon code me semble tout a fait correct, en gros je ne vois pas du tout où est l'erreur.C'est pour cela que je me tourne vers vous et vos avis expérimentés afin de me donner un petit coup de pouce.

 

Voici la partie centrale du programme, le reste c'est les prototypes je ne les post pas (inutile).

#include <stdlib.h>
#include <stdio.h>
#include <gtk/gtk.h>

#include "callback.h"
#include "prototypes.h"

int main(int argc, char *argv[])
{
    gtk_init(&argc, &argv);

    CreateWindow();

    gtk_main();

    return EXIT_SUCCESS;
}

void CreateWindow(void)
{
    GtkWidget *mainWindow   = NULL;
    //GtkWidget *vBox         = NULL;
    GtkWidget *menuBar      = NULL;
    GtkWidget *menu         = NULL;
    GtkWidget *menuItem     = NULL;

    mainWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_container_set_border_width(GTK_CONTAINER(mainWindow), 20);
    gtk_window_set_title(GTK_WINDOW(mainWindow), "My Text Editor [-MTE-]");
    gtk_window_set_default_size(GTK_WINDOW(mainWindow), 1280, 768);
    gtk_window_set_position(GTK_WINDOW(mainWindow), GTK_WIN_POS_CENTER_ON_PARENT);
    gtk_window_set_resizable(GTK_WINDOW(mainWindow), TRUE);

    g_signal_connect(G_OBJECT(mainWindow), "destroy", G_CALLBACK(Quit), NULL);

    menuBar = gtk_menu_bar_new();
    gtk_container_add(GTK_CONTAINER(mainWindow), menuBar);


    menuItem = gtk_menu_item_new_with_label("Fichier");
    gtk_menu_bar_append(GTK_MENU_BAR(menuBar), menuItem);

    menu = gtk_menu_new();
    gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuItem), menu);

    /** Entrée Nouveau **/
    menuItem = gtk_menu_item_new_with_label("Nouveau");
    gtk_menu_append(GTK_MENU(menu), menuItem);

    /** Entréé Ouvrir **/
    menuItem = gtk_menu_item_new_with_label("Ouvrir");
    gtk_menu_append(GTK_MENU(menu), menuItem);

    /** Entrée Enregistrer **/
    menuItem = gtk_menu_item_new_with_label("Enregistrer");
    gtk_menu_append(GTK_MENU(menu), menuItem);

    /** Entrée Enregistrer Sous **/
    menuItem = gtk_menu_item_new_with_label("Enregistrer Sous");
    gtk_menu_append(GTK_MENU(menu), menuItem);

    /** Séparateur **/
    menuItem = gtk_menu_item_new();
    gtk_menu_append(GTK_MENU(menu), menuItem);

    /** Entrée Imprimer **/
    menuItem = gtk_menu_item_new_with_label("Imprimer");
    gtk_menu_append(GTK_MENU(menu), menuItem);

    /** Séparateur **/
    menuItem = gtk_menu_item_new();
    gtk_menu_append(GTK_MENU(menu), menuItem);

    /** Entrée Quitter **/
    menuItem = gtk_menu_item_new_with_label("Quitter");
    gtk_menu_append(GTK_MENU(menu), menuItem);

    gtk_widget_show_all(mainWindow);

    return;
}

Merci d'avance pour votre aide.

A++++

Modifié par TA-K-2-PT

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

  • En ligne récemment   0 membre est en ligne

    Aucun utilisateur enregistré regarde cette page.

×