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

Composants VCL Delphi Discussion :

[D2010] Changer la couleur de font d'un radiobutton ou d'un radiogroup


Sujet :

Composants VCL Delphi

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 7
    Points
    7
    Par défaut [D2010] Changer la couleur de font d'un radiobutton ou d'un radiogroup
    Bonjour à tous,

    J'utilise Delphi 2010 depuis peu et je me suis rendu compte qu'il était impossible de changer la couleur de font d'un radiobutton, radiogroup. En changeant la couleur en conception ou directement dans le code rien ne change. Il reste à la couleur par défaut de Windows qui doit être forcée (le bleu pour les radiogroup et noir pour les radiobutton). J'utilises aussi Delphi 6 et dans cette version, et il est très simple de changer la couleur dans chacun de ses composants.

    Avez vous des idées? Est ce possible d'empêcher Windows d'imposer son style par défaut?


    Merci d'avance !

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 459
    Points : 24 873
    Points
    24 873
    Par défaut
    A part retirer l'XPManifest ou de surcharger le Paint des ces controles, c'est devenu assez pénible de le faire en tout cas par simple modification de la propriété Color !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Merci de ta réponse. Je n'ai pas mis d'XPManifest. Simplement, c'est vraiment impossible de faire ce que l'on veut? (désactiver quelque chose?)


    Citation Envoyé par ShaiLeTroll Voir le message
    A part retirer l'XPManifest ou de surcharger le Paint des ces controles, c'est devenu assez pénible de le faire en tout cas par simple modification de la propriété Color !

  4. #4
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 693
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 693
    Points : 13 126
    Points
    13 126
    Par défaut
    Depuis D2007 (au moins), les nouveaux projets utilisent par défaut la bibliothèque ComCtl32 version 6.

    Tu peux toujours essayer de créer ton propre manifest en prennant soin de ne pas spécifier la version de cette librairie. La version 5.8 sera ainsi utilisée.

    Les lignes en rouge sont celles à ne pas inclure:

    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
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
      <assemblyIdentity version="1.0.0.0"
         processorArchitecture="X86"
         name="MonProg"
         type="win32"/> 
      <description>Mon programme</description> 
    <dependency>
      <dependentAssembly>
          <assemblyIdentity
              type="win32"
              name="Microsoft.Windows.Common-Controls"
              version="6.0.0.0"
              processorArchitecture="X86"
              publicKeyToken="6595b64144ccf1df"
              language="*"
          />
      </dependentAssembly>
    </dependency>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
          <requestedPrivileges>
            <requestedExecutionLevel
              level="asInvoker"
              uiAccess="false"/>
            </requestedPrivileges>
           </security>
      </trustInfo>
    </assembly>

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2010
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Merci Andnotor, j'ai fait plusieurs essais et sans résultats, je ne sais pas vraiment comment m'y prendre.
    J'ai modifié la structure du sample.manifest dans \Embarcadero\RAD Studio\7.0\source\Win32\vcl\ en respectant ce que tu m'avais dit.
    C'est vraiment abérant de pas pouvoir modifier la couleur de certains composants!



    Citation Envoyé par Andnotor Voir le message
    Depuis D2007 (au moins), les nouveaux projets utilisent par défaut la bibliothèque ComCtl32 version 6.

    Tu peux toujours essayer de créer ton propre manifest en prennant soin de ne pas spécifier la version de cette librairie. La version 5.8 sera ainsi utilisée.

    Les lignes en rouge sont celles à ne pas inclure:

    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
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> 
      <assemblyIdentity version="1.0.0.0"
         processorArchitecture="X86"
         name="MonProg"
         type="win32"/> 
      <description>Mon programme</description> 
    <dependency>
      <dependentAssembly>
          <assemblyIdentity
              type="win32"
              name="Microsoft.Windows.Common-Controls"
              version="6.0.0.0"
              processorArchitecture="X86"
              publicKeyToken="6595b64144ccf1df"
              language="*"
          />
      </dependentAssembly>
    </dependency>
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
        <security>
          <requestedPrivileges>
            <requestedExecutionLevel
              level="asInvoker"
              uiAccess="false"/>
            </requestedPrivileges>
           </security>
      </trustInfo>
    </assembly>

  6. #6
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 664
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 664
    Points : 6 967
    Points
    6 967
    Par défaut
    J'ai le problème également.
    Si quelqu'un a la solution, je suis preneur.
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ___ Écrivez dans un français correct !!

    C++Builder 5 - Delphi 6#2 Entreprise - Delphi 2007 Entreprise - Delphi 2010 Architecte - Delphi XE Entreprise - Delphi XE7 Entreprise - Delphi 10 Entreprise - Delphi 10.3.2 Entreprise - Delphi 10.4.2 Entreprise - Delphi 11.1 Entreprise
    OpenGL 2.1 - Oracle 10g - Paradox - Interbase (XE) - PostgreSQL (15.4)

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 176
    Points : 123
    Points
    123
    Par défaut
    Bonjour,
    La cavalerie arrive toujours trop tard ...
    Je suis sous Delphi 7. Moi aussi je viens d'avoir envie de changer la couleur de Font d'un (ou n) RadioButton(s) dans un RadioGroup. En cherchant dans le site, j'ai trouvé hier cette discussion datant de juin 2010 : Non Résolue !
    Cette nuit je me suis souvenu d'un code trouvé dans le site (pour créer des cases à cocher dynamiquement -que son auteur veuille bien m'excuser d'avoir oublié son pseudo-), j'ai essayé de l'adapter. Ça a l'air de marcher... (il suffit ici d'un RadioGroup ,trois Buttons avec OnClick, un FormActivate et un copier-coller de mon code. Remarque : OnClick sur un RadioButton fonctionne !!!).
    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
     
    unit Unit1;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, ExtCtrls;
     
    type
      TForm1 = class(TForm)
        RadioGroup1: TRadioGroup;
        Button1: TButton;
        Button2: TButton;
        Button3: TButton;
        procedure FormActivate(Sender: TObject);
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure Button3Click(Sender: TObject);
      private
        { Déclarations privées }
      public
        { Déclarations publiques }
        Nb_BoutonRadio:integer;
        procedure OnClickRadioButton(Sender: TObject);
    end;
     
    var
      Form1: TForm1;
      PositionTopRadioButton:integer;
      RadioButtons: array of TControl;
     
    implementation
     
    {$R *.dfm}
     
    procedure TForm1.FormActivate(Sender: TObject);
    begin
      Nb_BoutonRadio:=10;
      Button1.Enabled:=True;
      Button2.Enabled:=False;
      Button3.Enabled:=False;
    end;
     
    procedure TForm1.Button1Click(Sender: TObject);
    var i:integer;
    begin
      RadioGroup1.Width:=150;
      PositionTopRadioButton:=25;
      for i:=0 to Nb_BoutonRadio do
        begin
          SetLength(RadioButtons,Length(RadioButtons)+1);
          RadioButtons[i]:=TRadioButton.Create(Application);
         (RadioButtons[i] as TRadioButton).Parent:=RadioGroup1;
         (RadioButtons[i] as TRadioButton).Name:='RadioButton'+IntToStr(i);
         (RadioButtons[i] as TRadioButton).Width:=110;
         // Alterner bêtement la couleur de Font
         if i mod 2 = 0 then
           (RadioButtons[i] as TRadioButton).Font.Color:=clBlack
         else
           (RadioButtons[i] as TRadioButton).Font.Color:=clBlue;
          // ***********************************
         (RadioButtons[i] as TRadioButton).Caption:='Bouton-radio n°'+IntToStr(i);
         (RadioButtons[i] as TRadioButton).Top:=PositionTopRadioButton;
         (RadioButtons[i] as TRadioButton).Left:=20;
         (RadioButtons[i] as TRadioButton).OnClick:=OnClickRadioButton;
          PositionTopRadioButton:=PositionTopRadioButton+20;
       end;
      RadioGroup1.Height:=Length(RadioButtons)*21+30;
      Button1.Enabled:=False;
      Button2.Enabled:=True;
      Button3.Enabled:=True;
    end;
     
    // Alterner bêtement la couleur de Font
    procedure TForm1.Button2Click(Sender: TObject);
    var i:integer;
        Premier:string;
    begin
      Premier:='Rouge';
      if (RadioButtons[0] as TRadioButton).Font.Color=clRed then
        Premier:='Vert';
      for i:=0 to Nb_BoutonRadio do
        begin
          if Premier='Vert' then
            if i mod 2 = 0 then
              (RadioButtons[i] as TRadioButton).Font.Color:=clGreen
            else
              (RadioButtons[i] as TRadioButton).Font.Color:=clRed
          else
            if i mod 2 = 0 then
              (RadioButtons[i] as TRadioButton).Font.Color:=clRed
            else
              (RadioButtons[i] as TRadioButton).Font.Color:=clGreen;
        end;
    end;
    // ****************************
     
    procedure TForm1.Button3Click(Sender: TObject);
    var i:integer;
    begin
      for i:=0 to Nb_BoutonRadio do
        begin
          RadioButtons[i].Free;
        end;
      SetLength(RadioButtons,0);
      RadioGroup1.Height:=30;
      Button1.Enabled:=True;
      Button2.Enabled:=False;
      Button3.Enabled:=False;
    end;
     
    procedure TForm1.OnClickRadioButton(Sender: TObject);
    begin
      ShowMessage('OnClick fonctionne !');
    end;
     
    end.
    Sans doute ce code peut-il être amélioré, je ne suis pas un champion. Je pense notamment au choix entre trois lignes qui me semblent toutes fonctionner (mais il y a sans doute un distinguo important), à savoir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
          RadioButtons[i]:=TRadioButton.Create(Application); // ou bien...
          RadioButtons[i]:=TRadioButton.Create(Form1);       // ou bien...
          RadioButtons[i]:=TRadioButton.Create(RadioGroup1);
    Cordialement,
    Alain
    Ce qui est simple et évident pour soi-même ne l'est pas forcément pour les autres... et réciproquement !

  8. #8
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    Je ne sais pas si je n'ai rien compris à la discussion ou à la programmation orientée objet,
    mais le but de celle-ci est précisément de pouvoir faire ce qu'on veut avec ces objets.
    Comme, par exemple, en changer l'apparence.
    La méthode paint est déclarée virtuelle et publique justement pour que tu puisses en faire ce que tu veux.
    Tu la surcharges, et tu dessine ton composant comme ta fantaisie te le commande, le soir devant le film (le mercredi par exemple ) et le tour est joué.

    Si tu ne veux pas te casser la tête avec ça, tu as les très sérieux composants LMD dont une version gratuite est fournie avec le dvd partenaires de delphi.
    Ils te permettront de modifier facilement l'aspect de composants radio ou autres CheckBox.

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 176
    Points : 123
    Points
    123
    Par défaut
    @ od.dev
    Merci pour les infos. Mon code m'aura toujours permis de progresser un peu en Delphi. J'ai bien eu l'idée de créer un composant, mais je ne pense pas être au niveau pour l'instant : ce sera pour une étape ultérieure de mon apprentissage de Delphi.
    Quant au dvd partenaires de delphi, je ne le possède pas, alors faut bien mettre les mains dans le cambouis .

    Cordialement,
    Alain
    Ce qui est simple et évident pour soi-même ne l'est pas forcément pour les autres... et réciproquement !

  10. #10
    Inactif
    Homme Profil pro
    Analyste-programmeur Delphi
    Inscrit en
    Décembre 2003
    Messages
    490
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France

    Informations professionnelles :
    Activité : Analyste-programmeur Delphi

    Informations forums :
    Inscription : Décembre 2003
    Messages : 490
    Points : 287
    Points
    287
    Par défaut
    Citation Envoyé par alainvh Voir le message
    Merci pour les infos. Mon code m'aura toujours permis de progresser un peu en Delphi. J'ai bien eu l'idée de créer un composant, mais je ne pense pas être au niveau pour l'instant : ce sera pour une étape ultérieure de mon apprentissage de Delphi.
    Quant au dvd partenaires de delphi, je ne le possède pas,
    Alain
    Les questions que tu poses dans ton post, sont liées, non pas au comportement, mais à l'apparence des composants.
    Or, il se trouve que c'est le meilleur moyen de mettre un pied dans la POO.
    La redéfinition de la méthode "paint" d'un composant est la plus simple à appréhender, puisque tu vois le résultat à l'écran.
    Il faut simplement maîtriser, c'est un bien grand mot, l'objet TCanvas du composant, qui rassemble toutes les procédures et fonctions permettant de dessiner (exemple en pièce jointe d'un interrupteur (alternative au radio bouton)).

    Pour créer un nouveau composant :
    Composants -> Nouveau composant VCL
    tu choisis dans la liste l'ancêtre dont ton composant va hériter
    tu réponds aux autres questions comme ça t'arranges...
    Delphi te créé l'unité qui correspond au squelette de ton nouveau composant.

    Dans la partie "public" de l' "interface"
    tu déclare la redéfinition de la méthode "paint" héritée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    public
        procedure Paint; override;
    dans la partie implémentation, tu implémente la redéfinition de la méthode
    "paint" comme dans l'exemple en PJ, et tu laisse parler l'artiste qui sommeil en toi.

    Ce n'est réellement pas plus compliqué.

    Pour les composants LMD, tu peux les télécharger ici : http://www.lmd.de/download/#LMD%20Freeware
    en fonction de ta version de Delphi.

    Bon trip
    Fichiers attachés Fichiers attachés

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 176
    Points : 123
    Points
    123
    Par défaut
    Citation Envoyé par od.dev Voir le message
    et tu laisse parler l'artiste qui sommeil en toi.
    Merci pour ton humour .
    Merci surtout pour tes explications et ton code en pièce jointe : cela va me faire avancer d'un grand pas.

    Bonne journée.
    Cordialement,

    Alain
    Ce qui est simple et évident pour soi-même ne l'est pas forcément pour les autres... et réciproquement !

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 74
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 176
    Points : 123
    Points
    123
    Par défaut
    Une autre discussion m'a révélé une solution encore bien plus simple pour changer la couleur de Font des RadioButton.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RadioGroup1.Button[0].Font.Color:=clRed;
    RadioGroup1.Button[1].Font.Color:=clGreen;
    Cordialement,
    Alain
    Ce qui est simple et évident pour soi-même ne l'est pas forcément pour les autres... et réciproquement !

  13. #13
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 459
    Points : 24 873
    Points
    24 873
    Par défaut
    Uniquement sous Win2000 ou sur XP\Sevent en désactivant la Gestion des Thèmes (normalement sous D7, par défaut XPManifest n'est pas inclu, contrairement à D20xx ou la Gestion des Thèmes est par défaut, si je ne me trompe pas !)

    Je pense que Hardarac lorsqu'il a créé ce sujet, se plaignait justement du changement de comportement de son programme parce que la Fonte de la plupart des Controles Windows est tout simplement ignorée au profit du Thème !

    Perso, j'utilise des TLabel pour éviter ce problème mais ce n'est pas applicable partout et pour le TRadioGroup, ça serait même très vilain (mais possible, Paint reste le plus élégant !)
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    99
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 99
    Points : 98
    Points
    98
    Par défaut
    Est ce possible d'empêcher Windows d'imposer son style par défaut?
    je remonte ce post pour donner quelques pistes à ceux qui, comme moi, cherchaient à personnaliser certains composants (dont le radiobutton) pour vcl et firemonkey :

    https://www.developpez.net/forums/d1...es-vcl-delphi/
    http://www.jcolibri.com/articles/vcl...cl_styles.html

    https://community.embarcadero.com/bl...-android-style
    (ce tuto est accès aux visuels des compos mais les textes peuvent également être personnalisés via le concepteur de styles)

Discussions similaires

  1. changer la couleur d'un font
    Par Mario Rousson dans le forum VB.NET
    Réponses: 1
    Dernier message: 07/11/2011, 20h24
  2. changer les couleurs, fonts..
    Par Georges974 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 31/07/2011, 14h49
  3. Changer la couleur de "font" dans un objet de type "ImageFont" dans PIL
    Par KINENVEU dans le forum Calcul scientifique
    Réponses: 2
    Dernier message: 07/06/2007, 03h29
  4. Réponses: 6
    Dernier message: 22/03/2007, 07h30
  5. Changer la couleur de fond ou font
    Par machipot dans le forum Access
    Réponses: 5
    Dernier message: 08/03/2007, 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