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 :

Placement d'un widget sur un autre widget


Sujet :

GTK+ avec C & C++

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 13
    Points : 13
    Points
    13
    Par défaut Placement d'un widget sur un autre widget
    Bonjour,

    Je n'arrive pas à trouver un moyen pour placer un widget sur un autre widget.

    Mon besoin est simple : j'ai un drawingarea qui occupe toute la zone de ma fenêtre. Et je souhaite pouvoir rajouter 1 bouton sur le drawingarea.

    Si je considère le drawingarea comme un containeur et que j'ajoute le bouton dessus, j'ai des erreurs à l'exécution, ce qui ne me surprend pas étant donné qu'un drawingarea n'est pas un container.

    Si quelqu'un a une idée.
    Merci.

  2. #2
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Bon, j'ai trouvé une solution partielle à mon problème.

    J'ai réussi à placer un GtkDrawingArea au-dessus d'un autre GtkDrawingArea en utilisant le container GtkFixed.

    Ci-dessous, un bout de code dont le rôle est d'avoir un drawing area occupant toute la zone de la fenêtre et de positionner un autre drawing area "sur le premier".
    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
     
    GtkWidget* pMainWindow;
    GtkWidget* pDrawingArea;
    GtkWidget* pUpperDrawingArea;
    GtkWidget* pFixed;
     
    pMainWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    pDrawingArea = gtk_drawing_area_new();
    pUpperDrawingArea= gtk_drawing_area_new();
    pFixed = gtk_fixed_new();
     
    gtk_window_set_default_size(GTK_WINDOW(pMainWindow), 480, 590);
    gtk_widget_set_size_request(pDrawingArea, 480, 590);
    gtk_widget_set_size_request(pUpperDrawingArea, 100, 50);
     
    gtk_container_add(GTK_CONTAINER(pMainWindow), pFixed);
     
    gtk_fixed_put(GTK_FIXED(pFixed), pDrawingArea, 0, 0);
    gtk_fixed_put(GTK_FIXED(pFixed), pUpperDrawingArea, 200, 200);
     
    // add signal handlers...
     
    gtk_widget_show_all(pMainWindow);
    Ce bout de code semble fonctionner.
    En revanche, si je remplace le drawing area que je positionne "au-dessus" (pUpperDrawingArea) par un GtkButton, là malheureusement, le bouton n'apparait pas

    Si quelqu'un connait la bonne façon de faire, je suis preneur de l'information

    Merci.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 39
    Points : 32
    Points
    32
    Par défaut
    Bonjour

    Et en faisant une détection des coordonnées du clic souris dans ou en dehors d'une zone de ta DA, en affectant un signal at une action au clic dans la zone et rien ou une aurtre action en dehors ? Après tu dessine un bouton stylisé et youplaboum.

    C'est ce que je ferais avec une DA.

    DBoJ

Discussions similaires

  1. Déposer un widget sur un autre
    Par dj_the_kid dans le forum Qt
    Réponses: 2
    Dernier message: 04/03/2011, 05h14
  2. Empiler des widgets sur la gauche
    Par haraelendil dans le forum Débuter
    Réponses: 4
    Dernier message: 29/09/2008, 19h46
  3. Insérer un widget dans un autre
    Par Chris33 dans le forum wxPython
    Réponses: 1
    Dernier message: 28/04/2008, 18h24
  4. accrocher des widget sur une table
    Par insa59 dans le forum GTK+ avec C & C++
    Réponses: 6
    Dernier message: 02/04/2007, 11h32
  5. Widgets? Sur quel support sont ils dessiner?
    Par jazz matazz dans le forum Windows
    Réponses: 5
    Dernier message: 28/02/2006, 12h04

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