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

Interfaces Graphiques Discussion :

Listbox avec des lignes de couleurs différentes


Sujet :

Interfaces Graphiques

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 6
    Points : 6
    Points
    6
    Par défaut Listbox avec des lignes de couleurs différentes
    Bonjour,

    Voici mon problème :

    J'ai une GUI avec plein de widgets parmis elles une listbox

    J'aimerais avoir différentes couleurs pour différentes lignes : par exemple, la première ligne en rouge "Line 1", la deuxième "Line 2"en vert, la troisième "Line3" en bleue.

    Line 1
    Line 2
    Line 3

    J'ai essayé dans le menu inspector sur le champ "String"de mettre la première ligne comme ceci :

    <HTML><FONT color="red">Line 1</FONT></HTML>
    <HTML><FONT color="green">Line 2</FONT></HTML>
    <HTML><FONT color="blue">Line 3</FONT></HTML>

    et ça marche.

    Mais mon problème c'est que, Line 1, Line 2, Line 3 ce sont des variables :

    line1 = 'Line 1';
    line2 = 'Line 2';
    line3 = 'Line 3';

    quand je mets : set(handles.listbox1,'String','<HTML><FONT color="red">Line 1</FONT></HTML>') ca ne marche pas.

    et quand je mets :
    set(handles.listbox1,'String','<HTML><FONT color="red">'line1'</FONT></HTML>') ca ne marche pas non plus.

    Ma question :

    comment mettre plusieurs couleurs sur différentes lignes d'une listbox, en utilisant la fonction set().

    Merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 304
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 304
    Points : 52 886
    Points
    52 886
    Par défaut
    Essaie ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    txt = {'AAA' 'BBB' 'CCC'};
    col = {'red' 'green' 'blue'};
     
    for n=1:numel(txt)
        str{n} = sprintf('<HTML><FONT color="%s">%s</FONT></HTML>',col{n},txt{n});
    end
     
    figure
    uicontrol('style','listbox', ...
        'String',str)
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    txt = {'AAA' 'BBB' 'CCC'};
    col = {'red' 'green' 'blue'};
     
    str = strcat({'<HTML><FONT color="'},...
        col,{'">'},txt,{'</FONT></HTML>'});
     
    figure
    uicontrol('style','listbox', ...
        'String',str)
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 6
    Points : 6
    Points
    6
    Par défaut ca marche
    comme ça ca marche à merveille, merci quand meme de ta réponse.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    a = '<HTML><FONT color="red">Hello</FONT></HTML>';
    b = '<HTML><FONT color="blue">hfg</FONT></HTML>';
    set(handles.listbox1,'String',{a b})
    avec listbox1 est le tag.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 19/03/2010, 15h11
  2. [CSS 2.1] menu vertical avec des liens de couleurs différentes
    Par kabkab dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 07/12/2009, 14h59
  3. gridBagLayout avec des lignes de taille différentes
    Par zuzuu dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 20/06/2008, 14h16
  4. listbox avec des items de couleur différente
    Par ifrit 23 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 08/02/2008, 22h28
  5. Dessiner des lignes de couleur différente
    Par gids01 dans le forum 2D
    Réponses: 4
    Dernier message: 06/11/2006, 11h14

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