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 :

Comment passer en mode édition dans un TTreeView ? [FAQ]


Sujet :

C++Builder

  1. #1
    Invité
    Invité(e)
    Par défaut Comment passer en mode édition dans un TTreeView ?
    Bonjour,

    J'utilise Builder 6 pro.
    J'ai une fenêtre avec un composant TTreeView qui a la propriété "ReadOnly = false".

    Quand je clique dans mon arbre (TTreeView), j'arrive à modifier les éléments. Je passe en mode édition sans avoir écrit une ligne de code et j'arrive à changer le nom des noeuds.

    J'ai ajouté un bouton "Renommer". Je voudrais passer en édition d'un noeud de mon TTreeView quand j'appuie sur le bouton.

    J'ai parcouru toutes les méthodes du TTreeView et je n'ai rien vu pour passer en mode édition. Il y a la méthode "Edit" qui semble faire cela, mais on n'y a pas accès par code. C'est possible de déclencher le mode "Edition" d'un TTreeView par code ?

    Merci,

    A+

  2. #2
    Membre éprouvé

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

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Points : 1 148
    Points
    1 148
    Par défaut
    Une méthode "bricolage" : simule un appui sur la touche F2. Tu envoie une message Windows à ton TTreeView lui indiquant qu'on a appuyé sur la touche F2.

    C'est du bricolage certes, mais à défaut d'autre chose...

  3. #3
    Membre expérimenté Avatar de 10_GOTO_10
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    887
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 887
    Points : 1 531
    Points
    1 531
    Par défaut
    La classe TTreeNode a une méthode EditText qui permet ça.
    Mais ne la cherche pas dans l'aide, elle n'y est pas...

  4. #4
    Membre éprouvé

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

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Points : 1 148
    Points
    1 148
    Par défaut
    C'est bon à savoir cela.
    Merci 10_GOTO_10 !

  5. #5
    Invité
    Invité(e)
    Par défaut Merci...
    Merci pour la méthode "EditText", mais elle s'utilise avec quels parametres ?

    J'ai essayé ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this->TreeView1->EditText();
    Et j'ai eu le message suivant du compilo :

    [C++ Erreur] Unit1.cpp(30): E2316 'EditText' n'est pas un membre de 'TTreeView'


    Tu as un exemple d'utilisation de cette méthode ?

  6. #6
    Membre éprouvé

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

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Points : 1 148
    Points
    1 148
    Par défaut
    Comme 10_GOTO_10 l'a dit c'est un membre de TTreeNode et non pas TTreeView.

    Bref il faut que tu récupères le node actuellement sélectionné (je connais plus par coeur et je n'ai pas BCB sous la main) et seulement ensuite appeler la méthode EditText.

    Ca doit ressembler à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    TTreeNode *node;
    node = TreeView1->Selected;  // C'est de ça dont je ne suis absolument pas sûr
    node->EditText();

  7. #7
    Invité
    Invité(e)
    Par défaut OK
    Effectivement, c'est une méthode de TTreeNode !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this->TreeView1->Items->Item[1]->EditText();
    Elle apparait même dans l'outil de complément de code.

    Et elle fonctionne très bien !

    Cette petite particularité pourrait bien figurer dans la FAQ, non ?

    Merci en tous cas !

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 04/09/2008, 20h34
  2. Réponses: 6
    Dernier message: 27/08/2008, 10h15
  3. Réponses: 3
    Dernier message: 15/02/2008, 11h05
  4. Réponses: 1
    Dernier message: 31/12/2007, 14h16
  5. comment passer du code html dans une requette sql?
    Par vinceH31 dans le forum Requêtes
    Réponses: 5
    Dernier message: 23/11/2006, 18h10

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