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:

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


TA-K-2-PT

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
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...