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 :

Adaptation du label à la taille du widget


Sujet :

GTK+ avec C & C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 7
    Par défaut Adaptation du label à la taille du widget
    Bonjour,

    J'ai un label dont le texte est une "longue" ligne. Lorsque je lance mon programme, cela agrandit donc ma fenêtre. Pour palier à ce problème, j'ai utiliser
    "gtk_widget_set_size_request()" cependant, cela "coupe" mon texte.

    Ce que je souhaite, c'est un retour à la ligne automatique lorsque l'on atteint le bord du cadre du widget (et un scrollbar verticale, que j'ajouterais après).
    Est-ce possible avec GTK ?

    Merci, Romz34

  2. #2
    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
    Par défaut
    Regarde la documentation de gtk_label_set_line_wrap. Mais il y a certaines limitations dans GTK2 au niveau des labels, qui ont été corrigées dans GTK3 avec le width-for-height (qui calcul la longueur optimale de la ligne d'après la hauteur disponible). Si ton texte est très long, un GtkEntry en lecture seule aura sans doute de meilleurs résultats.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 7
    Par défaut
    Merci. Je vais tester ça.

    Par contre, je n'ai pas bien compris pourquoi un GTK entry en lecture seul serait mieux qu'un label (c'est quand même son rôle d'afficher du texte ^^).

    Sinon, je pourrait peut-être passer à GTK 3 ... (mais il y a peu de tuto apparament :/).


    EDIT : ça ne marche pas pour moi ... voici la syntaxe que j'ai mis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    lAdn = gtk_label_new("aucgucuaucugaatcggcgccaugugcugaucgaucgacuauaucugacgac");
     
    gtk_widget_set_size_request(GTK_LABEL(lAdn), 550, -1);
    gtk_label_set_line_wrap(GTK_LABEL(lAdn), TRUE);

    Le tout est dans une vBox ...
    ça coupe mon texte, mais ça ne le fait pas continuer à la ligne suivante.

  4. #4
    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
    Par défaut
    Si tu mets un seul mot long, c'est un peu logique, le découpage se faisant entre chaque mot... Si tu écris une prhrase, elle devrait être coupée correctement.

    Pour le GtkLabel, c'est surtout fait pour afficher quelques informations sur une ligne en général, et pas trop faire du multi-lignes avec un très long texte, car ce fonctionnement est notoirement bogué dans GTK2. GtkEntry gèrera mieux le multi-lignes.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2012
    Messages : 7
    Par défaut
    Arf, effectivement pour le coup du mot ... du coup, il faudrait que j'appelle une fonction qui découpe ce mot (je compte le nombre de caractère par ligne, et met un retour à la ligne ...). C'est dommage que la fonction ne découpe pas le mot :/.

    Merci.

  6. #6
    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
    Par défaut
    GtkLabel — A widget that displays a small to medium amount of text
    Si tu as besoin de plus, utilise un GtkEntry multi-lignes, comme je te l'ai indiqué plus haut, quitte à le mettre en lecture seule. Rajouter toi même tes propres retours chariots ne rime à rien, ça pètera dès que tu redimensionneras la fenêtre.

Discussions similaires

  1. adaptation du formulaire à la taille de l'écran
    Par Jeje_031 dans le forum VBA Access
    Réponses: 2
    Dernier message: 08/08/2008, 08h28
  2. Label intéligent : taille police
    Par kitue dans le forum SWT/JFace
    Réponses: 1
    Dernier message: 16/05/2008, 19h16
  3. Adapter un cadre à la taille d'un texte
    Par Sebio dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/04/2007, 07h44
  4. Adapter la form à la taille d'une image
    Par escape dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 06/12/2006, 15h44

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