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+ Discussion :

gtk ajouter une classe dans une HBox


Sujet :

GTK+

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 80
    Points : 56
    Points
    56
    Par défaut gtk ajouter une classe dans une HBox
    Bonjour,

    Voici mon problème, j'ai crée une classe Console qui affiche un textview dans un scroll, et j'aimerais afficher cette console dans une autre classe à l'aide d'un Console.new(), j'ai réussi à le faire mais uniquement dans une window et non dans une hbox j'en est absolument besoin pour ajouter d'autre classe à côté^^ :s comment je doit procéder?


    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
    "#!/usr/bin/env ruby"
     
    require 'gtk2'
     
    class Console < Gtk::ScrolledWindow
     
      @console
     
      def initialize()
        super()
        #Gtk.init();
        initInterface();
        #Gtk.main();
      end
     
      def initInterface()
     
          #editeur de texte
          @console = Gtk::TextView.new();
          #pas editable
          @console.set_editable(false);
          #masque le curseur
          @console.set_cursor_visible(false);
          #bloque le texte a la largeur de la fenetre
          @console.set_wrap_mode(Gtk::TextTag::WRAP_WORD);
          #scrollbar
          #masque les barres de defilement
          set_policy(Gtk::POLICY_AUTOMATIC,Gtk::POLICY_AUTOMATIC) 
          add(@console);
          buffer=@console.buffer();
          #on ajoute le texte au buffer
          buffer.set_text("Bienvenue dans the game"); 
     
          show();
          @console.show(); 
      end
     
     
      def afficherTexte(texte)
         #on recupere le buffer du textview
         buffer=@console.buffer();
         #on ajoute le texte au buffer
         buffer.set_text(buffer.get_text+"\n"+texte); 
      end
     
     
    end
     
    #Console.new;

    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
    "#!/usr/bin/env ruby"
     
    require 'gtk2'
    require './Console.rb'
     
    #affiche console + jauges
    class Zaf
      @console
     
      def initialize()
          Gtk.init();
          @console = Console.new();
     
          initInterface();
     
          Gtk.main();
     
        end
     
      def initInterface()
          window = Gtk::Window.new();
          window.signal_connect('destroy') { 
            Gtk.main_quit();
          }
     
          window.set_default_size 400,150;
          hbox = Gtk::HBox.new(true, 2);
          #hbox.pack_start(@console);
          window.add(@console);
          window.set_title("test");
     
          window.show();
      end
     
     
    end
     
    Zaf.new();


    je suis obligé de faire hériter la console du scroll pour que cela fonctionne :s quelqu'un peux t'il m'aider?

    Merci d'avance =)

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 80
    Points : 56
    Points
    56
    Par défaut
    up j'ai besoin de votre aide, je ne sais pas dans quoi encapsuler ma console pour pouvoir l'ajouter dans une hbox ou vbox, en java j'aurais utilisé un jpanel mais la je suis un peux perdu^^' j'ai fait beaucoup de recherche sur google mais il y a très peux de documentation, si vous avez la réponse en C ou en Python c'est pas grave j'adapterais du moment que ça utilise gtk c'est bon^^



    edit : j'ai trouvé me manquais just un .show sur les hbox ><

  3. #3
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Pour éviter cela, une fois que tu as imbriqué tes widgets les uns dans les autres, utilise show_all plutôt que show. show_all affiche le widget ainsi que tous ses descendants, récursivement, là où show n'affiche que le widget en question.
    Documentation officielle GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels par l'exemple (platform-demos):
    GTK (tous langages)

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

Discussions similaires

  1. Eval d'une propriété d'une classe dans une classe
    Par bizet dans le forum ASP.NET
    Réponses: 4
    Dernier message: 28/10/2008, 09h43
  2. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  3. Ajout de propriété dans une classe d'une assembly
    Par ftesson dans le forum Général Dotnet
    Réponses: 7
    Dernier message: 14/05/2007, 14h25
  4. [POO] Utilisation d'une classe dans une classe !
    Par Okinou dans le forum Langage
    Réponses: 3
    Dernier message: 16/02/2006, 14h34
  5. Une classe dans une classe...
    Par Baquardie dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 30/09/2005, 19h36

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