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 :

BCB6 mettre en surbrillance le texte


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut BCB6 mettre en surbrillance le texte
    Bonjour a tous

    Sous Windows XP avec BCB6

    SVP,
    J'aimerais mettre en surbrillance le texte d'un TValueListEditor apres une recherche du texte a partir d'un TEdit

    Expl:

    Au depart le le mot BONJOUR est dans le TValueListEditor.
    Je tape BONJOUR dans Le TEdit, Je click sur un TButton et le texte du TValueListEditor "BONJOUR"se mes en surbrilance.

    Merci a vous
    A++

  2. #2
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Rebonjour
    Ou meme d'un TEdit a TEdit, c'est juste pour avoir une idée de depart.
    A++

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2002
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2002
    Messages : 23
    Par défaut
    Je pense que tu peux utiliser les propriétés SelStart et SelLength de ton contrôle TEdit. Le texte sélectionné étant ensuite accesible directement par la propriété SelText.
    Avec SelStart = 2 et SelLength = 1, le deuxième caractère de ton TEdit devrait être en surbrillance.

  4. #4
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Merci fverneau

    Cela marche tres bien de TEdit a TEdit, etc...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Edit1->SetFocus();
    Edit1->SelStart = 0;
    Edit1->SelLenght = 10;
    Merci.


    SVP
    Est-ce-que quelqu'un connaitrer le moyen de donner la proprietée SelStart et SelLength a un composant qui ne detient pas ces proprietées.
    Merci A++

  5. #5
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Voila le code dont je me sert pour rechercher le nom de la villes ? dans le fichier 01Ain.txt.
    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
    //---------------------------------------------------------------------------
    void __fastcall TForm1::Button2Click(TObject *Sender)
    {
     ListBox1->Clear();
     Label2->Caption = "Mot(s) inexistant";//Si le mot ne se trouve pas dans le fichier.
     
     AnsiString rep = ExtractFilePath(Application->ExeName);
     AnsiString az = rep + "villes\\01Ain.txt";
     
      int Index;
        TStringList* MaListe = new TStringList();
        MaListe->LoadFromFile(az);
        MaListe->Sort();
     
      if (MaListe->Find(Edit1->Text, Index))
        {
        ListBox1->Items->AddStrings(MaListe);
        Label2->Caption =  Edit1->Text;//Si le mot se trouve dans le fichier
     
      delete MaListe;
     }
    }
    //---------------------------------------------------------------------------
    Comment je pourrais mettre un surbrillance juste le mot rechercher, car avec SelStart et SelLength, il faut donner le numero de ligne plus le nombre de lettres. y aurait-il pas une autre metode.
    Merci A++

    Balises [Code] rajoutées par Ricky81
    Merci d'y penser à l'avenir

  6. #6
    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
    Bonsoir,

    si on charge le contenu du fichier dans la listBox, ceci sélectionne la ligne qui correspond à la valeur saisie dans l'edit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListBox1->ItemIndex = ListBox1->Items->IndexOf(Edit1->Text);
    Remarque : insensible à la casse ici.

  7. #7
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Merci Ricky81
    J'en profite pour te remercié de l'aide que tu nous apportent et aussi pour l'aide de creation de composants etc...
    Donc Merci.

    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
    //----------------------------------------------------------
    void __fastcall TForm1::Button8Click(TObject *Sender)
    {
     ListBox1->Clear();
     Label2->Caption = "Mot(s) inexistant";//Si le mot ne se trouve pas dans le fichier.
     
     AnsiString rep = ExtractFilePath(Application->ExeName);
     AnsiString az = rep + "vil\\01Ain.txt";
     
      int Index;
        TStringList* MaListe = new TStringList();
        MaListe->LoadFromFile(az);
        MaListe->Sort();
     
      if (MaListe->Find(Edit3->Text, Index))
        {
        ListBox1->Items->AddStrings(MaListe);
        ListBox1->ItemIndex = ListBox1->Items->IndexOf(Edit3->Text);//Surbrillance mot + triage par ordre alphabetique
     
        Label2->Caption =  Edit3->Text;//Si le mot se trouve dans le fichier
     
      delete MaListe;
     }
    }
    //----------------------------------------------------------
    Merci A++

  8. #8
    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
    N'oublies pas d'utiliser les balises de mise en forme la prochaine fois

  9. #9
    Membre chevronné Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par défaut
    Bonsoir

    Milles excuses,

    Je ne sait pas du tout comment faire pour utiliser les balise de mise en forme :
    Je ne savait meme pas qu'il fallait le faire :
    Je pense que comme j'ai mis du code, il aurait valut que j'utilise [Code] juste entre [Quote] et [List] :

    Bonsoir A++

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/05/2014, 19h35
  2. Mettre en surbrillance le texte d'un TextBox
    Par Invité(e) dans le forum VB.NET
    Réponses: 2
    Dernier message: 07/03/2011, 22h09

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