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 :

Modifier un ComboBox


Sujet :

Composants VCL Delphi

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2005
    Messages : 8
    Points : 8
    Points
    8
    Par défaut Modifier un ComboBox
    J'ai un ComboBox avec quelques mots dans les Items. Ce que je souhaite faire c'est que si l'on choisi un mot de la liste je veux mettre un autre mot qui n'est pas dans la liste en modifiant la propriété Text.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm1.ComboBox1Change(Sender: TObject);
    begin
      if ComboBox1.ItemIndex=2 then
        ComboBox1.Text:='autre chose';
    end;
    Je précise que la propriété Style est bien sur csDropDown.
    Le résultat c'est que le combo affiche ce que j'ai séléctionné sans tenir compte de mon affectation.
    Je devrais même pouvoir enlever la ligne avec le if et après ça je ne peux plus simplifier pour trouver le problème.

    J'ai besoin de vos lumières. Merci

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 44
    Points : 52
    Points
    52
    Par défaut
    Salut,

    Je n'ai pas delphi sous la main, mais tu peux essayer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm1.ComboBox1Change(Sender: TObject);
    begin
      if ComboBox1.ItemIndex=2 then
        ComboBox1.Items[2]:='autre chose';
    end;
    @+

  3. #3
    Expert éminent sénior

    Avatar de sjrd
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Juin 2004
    Messages
    4 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Suisse

    Informations professionnelles :
    Activité : Directeur de projet
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2004
    Messages : 4 517
    Points : 10 154
    Points
    10 154
    Par défaut
    Lorsque Style est sur csDropDown, la propriété ItemIndex ne sert pas, et n'est pas renseignée correctement. Tu dois donc faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if ComboBox1.Text = ComboBox1.Items[2] then
      ComboBox1.Text := 'autre chose';
    sjrd, ancien rédacteur/modérateur Delphi.
    Auteur de Scala.js, le compilateur de Scala vers JavaScript, et directeur technique du Scala Center à l'EPFL.
    Découvrez Mes tutoriels.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Septembre 2005
    Messages : 8
    Points : 8
    Points
    8
    Par défaut
    La solution de mduse change en effect le items[2] mais le text du ComboBox est éffacé lors du OnChange.

    Je vais changer ma façon de tester le ComboBox en passant par la propriété Text au lieu de ItemIndex mais cela ne fonctionne toujours pas car mon affectation...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ComboBox1.Text := 'autre chose';
    ...est ignorée.

    Ce qui est étrange c'est que si j'ajoute un bouton a ma fiche avec le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure TForm1.Button3Click(Sender: TObject);
    begin
      Show;
    end;
    mon 'autre chose' s'affiche comme si j'avais fait un "refresh" de ma Fiche. J'ai bien essayé d'ajouter le Show à la fin du OnChange mais il l'ignore aussi

Discussions similaires

  1. [Toutes versions] Modifier des ComboBox à partir d'autres
    Par ben78630 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 11/02/2015, 21h54
  2. Réponses: 6
    Dernier message: 21/10/2009, 17h39
  3. Modifier une combobox depuis une autre form
    Par piero53 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 31/03/2009, 21h51
  4. [Conception] Modifier un enregistrement selon un combobox?
    Par Norin dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 18/01/2007, 10h11
  5. Réponses: 2
    Dernier message: 01/12/2006, 14h50

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