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 :

les MDI en gtk+


Sujet :

GTK+ avec C & C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Août 2007
    Messages : 12
    Par défaut les MDI en gtk+
    Bonjour,

    comment on declare des fonctions MDI avec gtk+, merci de me donner le code ou lien sur la documentation sur ça.

    merci pour l'aide.

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Si tu cherches la façon de créer une fenêtre comme les MDI avec l'API Win32 donc une fenêtre qui permet d'afficher des fenêtres filles à l'intérieur d'elle même... c'est impossible. GTK+ utilise en fait le style de fenêtrage à la Mac OS
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    360
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 360
    Par défaut
    bonjour,
    donc comment je peux proceder: est ce que je veux creer une nouvelle fenetre
    ou je veux utiliser des fenetre de dialogue.

    la solution de creation de la nouvelle fenetre m'apparait comme une solution mais
    le probleme que j'ai que il faut detruire l'ancienne fenetre mais a ce niveau je suis bloquer car je suis debutant avec gtk+

    ma fonction est la suivante
    kon je clique sur un element de menu la nouvelle fenetre apparait et l'ancienne existe ancore.
    le corps de ma fonction de clique sur l'element de menu est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    // la fonction associée à l'ajout 
     
    void Ajouter(GtkWidget *widget, gpointer data)
         {
               gtk_widget_destroy(F_Acceuil); // F_acceuil la fenetre principale 
              // gtk_widget_destroy(WindowManu);
     
     
              GtkWidget * F_Ajouter=NULL; // declaration de la fenetre
              GtkWidget * Layout1,*Layout2;   // declaration de layout
              GtkWidget * Frame;
              GtkWidget * Label[3];  // declaration des labels
              GtkWidget * button[2];  // les buttons valider,annuler et effacer
              GtkWidget * vBox,* pVBoxFrame;
              GtkWidget *  enty[2]; //  declaration des saisies de données
     
              /****** creation de la fenetre ********/
              F_Ajouter=gtk_window_new(GTK_WINDOW_TOPLEVEL);
              gtk_window_set_title(GTK_WINDOW(F_Ajouter),"Nouveau Article"); 
              gtk_window_set_default_size(GTK_WINDOW(F_Ajouter),600,400);
    	      gtk_window_set_position(GTK_WINDOW(F_Ajouter),GTK_WIN_POS_CENTER);
    	      Layout1=gtk_layout_new(NULL,NULL);
    	      gtk_container_add(GTK_CONTAINER(F_Ajouter), GTK_WIDGET(Layout1));
     
              /*Couleur bleu pale du layout*/
              GdkColor color;
    	      color.pixel = 0;
    	      color.red=60500;
    	      color.green=62001;
    	      color.blue=63504;
              gtk_widget_modify_bg(GTK_WIDGET(Layout1), GTK_STATE_NORMAL, &color);
     
    	      // creation, personnalisation et positionnement des labels
     
    	      Label[0]=gtk_label_new("");
    	      Label[1]=gtk_label_new("");
              Label[2]=gtk_label_new("");
              Label[3]=gtk_label_new("");
              gtk_label_set_markup(GTK_LABEL(Label[0]), "<span font_desc=\"Times New Roman italic 20\"foreground=\"#0000FF\">Ajouter Article</span>\n");
              gtk_label_set_markup(GTK_LABEL(Label[1]), "<span font_desc=\"Times New Roman 12\">Code Article </span>\n");
              gtk_label_set_markup(GTK_LABEL(Label[2]), "<span font_desc=\"Times New Roman 12\">Prix Article</span>\n");
              gtk_label_set_markup(GTK_LABEL(Label[3]), "<span font_desc=\"Times New Roman 12\"> Libelle Article</span>\n");
    	      gtk_layout_put (GTK_LAYOUT(Layout1),Label[0],200,10);
              gtk_layout_put (GTK_LAYOUT(Layout1),Label[1],50,100);
              gtk_layout_put (GTK_LAYOUT(Layout1),Label[2],50,140);
              gtk_layout_put (GTK_LAYOUT(Layout1),Label[3],50,180);
     
              // creation, et positionnement des buttons
     
              button[0]=gtk_button_new_with_label(" Valider ");
              button[1]=gtk_button_new_with_label(" Effacer ");
              button[2]=gtk_button_new_with_label(" Annuler ");
              gtk_layout_put (GTK_LAYOUT(Layout1),button[0],70,240);
              gtk_layout_put (GTK_LAYOUT(Layout1),button[1],140,240);
              gtk_layout_put (GTK_LAYOUT(Layout1),button[2],210,240); 
     
              // création & positionnement des zones de de saisies 
     
     
     
              // l'affichage de la fenetre et ses widgets
              gtk_widget_show_all(F_Ajouter); 
     
         }
    il affiche une erreur au niveau de 1 ligne de code de corps de la fonction.
    // gtk_widget_destroy(F_Acceuil);
    comment je peux resoudre ce probleme sachant que la fenetre principale se trouve ds la fonction main(..)

    Merci pour l'aide je crois le probleme est claire

Discussions similaires

  1. les couleurs en GTK
    Par hiko-seijuro dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 05/09/2007, 22h54
  2. Réponses: 4
    Dernier message: 23/05/2007, 09h51
  3. aide sur les mdi
    Par boopix dans le forum C++Builder
    Réponses: 12
    Dernier message: 12/04/2007, 22h30
  4. les biblio MFC,GTK ..?
    Par dimmu dans le forum Bibliothèques
    Réponses: 6
    Dernier message: 01/09/2006, 17h13
  5. [VB .Net][MDI]Débuter avec les MDI
    Par toto4650 dans le forum Windows Forms
    Réponses: 15
    Dernier message: 19/01/2006, 11h27

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