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 :

Taille de scrolled_window dans un gtk_dialog_new_with_buttons


Sujet :

GTK+ avec C & C++

  1. #1
    Membre confirmé
    Profil pro
    Retraité
    Inscrit en
    Novembre 2009
    Messages
    329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2009
    Messages : 329
    Points : 606
    Points
    606
    Par défaut Taille de scrolled_window dans un gtk_dialog_new_with_buttons
    Bonjour,
    Je n'arrive pas à ce que le hauteur d'une gtk_scrolled_window contenue dans un gtk_dialog_new_with_buttons s'adapte automatiquement quand j'agrandis le dialog.

    Pour illustrer mon problème, un petit programme:
    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
     
    #include <stdlib.h>
    #include <stdio.h>
    #include <gtk/gtk.h>
     
    int main ()
    {
      GtkWidget *w_dialog ,*vb ,*sw ,*w_text;
      GtkTextBuffer *w_buff;
     
      gtk_init (NULL,NULL);
     
      w_dialog = gtk_dialog_new_with_buttons ("Essai" ,NULL
    					  ,GTK_DIALOG_DESTROY_WITH_PARENT
    					  ,GTK_STOCK_APPLY   ,GTK_RESPONSE_APPLY
    					  ,GTK_STOCK_CLOSE   ,GTK_RESPONSE_CLOSE
    					  ,NULL);
     
      vb = GTK_DIALOG (w_dialog)->vbox;
     
      sw = gtk_scrolled_window_new (NULL,NULL);
      gtk_scrolled_window_set_policy  (GTK_SCROLLED_WINDOW(sw)
    				   ,GTK_POLICY_AUTOMATIC
    				   ,GTK_POLICY_AUTOMATIC);
      gtk_widget_set_size_request (sw ,100 ,80);
      w_text = gtk_text_view_new ();
      w_buff = gtk_text_view_get_buffer (GTK_TEXT_VIEW (w_text));
      gtk_widget_show (w_text);
      gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW(sw) ,w_text);
      gtk_box_pack_start (GTK_BOX (vb) ,sw , FALSE, TRUE, 1);
     
      gtk_text_buffer_insert_at_cursor (w_buff
    				    ,"text\n1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n" ,-1);
     
      gtk_widget_show_all (w_dialog);
      gtk_main ();    
      return 0;
    }
    Quand on agrandit la fenêtre avec la souris vers le bas, la taille de la "scrolled_window" ne change pas alors que je voudais qu'elle s'agrandisse en même temps pour montrer la totalité du texte.
    Merci d'avance si vous avez un tuyau à me donner.
    pvincent
    GraceGTK: a plotting tool at https://sourceforge.net/projects/gracegtk

  2. #2
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 329
    Points : 366
    Points
    366
    Par défaut
    Salut,

    Essaie avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gtk_box_pack_start (GTK_BOX (vb) ,sw , TRUE, TRUE, 1);
    D'autre part, je crois qu'un textview ne nécessite pas de viewport pour être ajouté dans une scrolledwindow :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gtk_scrolled_window_add(GTK_SCROLLED_WINDOW(sw) ,w_text);

  3. #3
    Membre confirmé
    Profil pro
    Retraité
    Inscrit en
    Novembre 2009
    Messages
    329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2009
    Messages : 329
    Points : 606
    Points
    606
    Par défaut
    Merci,
    Effectivement, avec TRUE, TRUE, ça marche.
    Je croyais pourtant avoir essayé avant... mais c'était dans un programme plus complexe.
    Il ne me reste plus qu'a comprendre la différence entre les deux.
    Par contre le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gtk_scrolled_window_add(GTK_SCROLLED_WINDOW(sw) ,w_text);
    semble ne pas exister dans ma version de GTK (2.12)
    A nouveau merci
    pvincent
    GraceGTK: a plotting tool at https://sourceforge.net/projects/gracegtk

  4. #4
    Membre confirmé
    Profil pro
    Retraité
    Inscrit en
    Novembre 2009
    Messages
    329
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2009
    Messages : 329
    Points : 606
    Points
    606
    Par défaut
    J'ai compris: dans le "vrai" programme, il y a plusieurs boites emboitées, et pour l'une d'entre elle le gtk_box_pack_start() avait FALSE, donc, j'avais beau changer les autres FALSE en TRUE, cela ne changeait rien au résultat.
    PV
    GraceGTK: a plotting tool at https://sourceforge.net/projects/gracegtk

  5. #5
    Membre averti
    Inscrit en
    Janvier 2007
    Messages
    329
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 329
    Points : 366
    Points
    366
    Par défaut
    Au temps pour moi, c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gtk_container_add(GTK_SCROLLED_WINDOW(sw) ,w_text);
    qu'il faut utiliser.


    Je sais pas si ça change grand chose, mais ça permet en tout cas d'avoir [un textview dans une scrolledwindow] au lieu d'[un textview dans un viewport dans une scrolledwindow].


    -

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Kylix] Taille des police dans kylix
    Par merzhin dans le forum EDI
    Réponses: 2
    Dernier message: 04/09/2004, 21h18
  2. Modifier la taille, la couleur ... dans un label
    Par Guigui_ dans le forum GTK+ avec Python
    Réponses: 3
    Dernier message: 15/07/2004, 17h09
  3. Taille des tabulations dans un TMemo ?
    Par dergen dans le forum Composants VCL
    Réponses: 2
    Dernier message: 07/01/2003, 19h38
  4. taille du texte dans un viewport
    Par pitounette dans le forum OpenGL
    Réponses: 3
    Dernier message: 22/07/2002, 12h06

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