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

C++Builder Discussion :

Recuperation de Name d'un composant et le convertir


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 22
    Par défaut Recuperation de Name d'un composant et le convertir
    bonsoir.

    Est il possible de recuperer le nom d'un composant et le convertir en TColor.
    Je m'explique, j'ai un popup dont les TMenuItems ont pour nom clRed, clBlue , etc ....
    Quand je selection le menu, je voudrais affecter à la couleur d'un composant la couleur (le MenuItem) que je viens de selectionner.


    Bob

  2. #2
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut
    Bonjour,

    tu peux peut-être tout simplement te servir de la propriété Tag et mémoriser le code couleur pour chaque item ?

    Eric

  3. #3
    Membre éprouvé
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Par défaut
    Bonsoir,

    Je devrais etre au lit depuis longtemps - a mon age c'est pas sérieux - mais bon, je suis incorrigible...
    Perso, j'essaierai ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    TMenuItem *pItem = dynamic_cast < TMenuItem * > (Sender);
    switch (pItem->MenuIndex)
    {
    case (0):
    Form2->Label1->Font->Color = clRed;
    break;
    case (1):
    Form2->Label1->Font->Color = clBlue;
    break;
    }
    par exemple.
    J'ai testé avec le Name de chaque TMenuItem, et en fait le gros problème est que si qq part ailleurs dans ta fiche tu affectes a un autre objet une couleur qui porte le meme nom qu'un de tes TMenuItem, la tu auras irrémédiablement une erreur ...
    Par ex, j'avais une erreur sur cette ligne dans ma fiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Form2->StringGrid1->Canvas->Font->Color = clRed;
    puisque qu'il est impossible d'affecter un TMenuItem * a une propriété TColor.

    @ +

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 22
    Par défaut
    Le tag est de type entier.
    C'etait plus simple (ou du moins plus parlant) de creer des menus possedant le nom de la couleur que je voulais .

  5. #5
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Par défaut
    Tu peux toujours laisser le nom de la couleur et dans le tag ne stocker que l'entier correspondant.

    C'est beaucoup plus simple...mais si tu aimes faire plus compliquer...

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    Le Tag fait très bien l'affaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    M->Tag = clWhite;
    M->Tag = 0x00FFFFFF; // même chose que clWhite
    A l'usage :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TColor c = (TColor)M->Tag;//transtypage pour éviter les avertissements
    A plus !

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 22
    Par défaut
    Ok. J'utilse la derniere solution.
    Merci à tous.
    bob

  8. #8
    Membre éprouvé
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifié)
    Inscrit en
    Décembre 2004
    Messages
    2 059
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : OPNI (Objet Programmant Non Identifié)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 059
    Par défaut
    B'soir,


    Merci henderson, voila qqchose que je n'aurais pas pensé essayer.

    @+

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

Discussions similaires

  1. recuperer le name d'un select en PHP apres un onsubmit()
    Par zimeau dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 13/04/2015, 15h15
  2. (WebFom) recuperer l'id d'un composant
    Par clouddd dans le forum C#
    Réponses: 2
    Dernier message: 06/12/2010, 12h33
  3. Recuperer le layout d'un composant
    Par papy27 dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 19/09/2006, 14h47
  4. Réponses: 4
    Dernier message: 20/01/2006, 00h45
  5. recuperer une requête avec le composant TIBSQL ??
    Par vbcasimir dans le forum Bases de données
    Réponses: 11
    Dernier message: 31/05/2005, 12h05

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