1. #1
    Nouveau membre du Club
    Inscrit en
    novembre 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : novembre 2004
    Messages : 34
    Points : 26
    Points
    26

    Par défaut Bizarrerie avec TComboBox

    Bonjour. Je bute depuis ce matin sur un truc bizarre avec un TComboBox contenant N items.
    Je cherche à faire en sorte que l'on fait défiler la sélection dans la ComboBox avec la flèche verticale du clavier, on se repositionne automatiquement sur le premier item lorsqu'on a atteint le dernier.
    J'utilise OnKeyDown avec la ligne suivante :
    If (key=VK_DOWN) and (ComboBox.itemindex=N-1) then comboBox.itemindex:=0.
    Bizarrement, la combobox ne remet pas sur le 1er item mais sur le deuxième.
    Quelqu'un peut-il me donner la solution ?
    Gab

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique
    Inscrit en
    janvier 2007
    Messages
    8 366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2007
    Messages : 8 366
    Points : 19 388
    Points
    19 388
    Billets dans le blog
    4

    Par défaut

    Bonjour,

    il doit manquer un key:=0 permettant d'annuler l'utilisation de la touche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     If (key=VK_DOWN) and (ComboBox.itemindex=N-1) then 
        begin
          comboBox.itemindex:=0;
          Key:=0;
       end;
    La seule chose absolue dans un monde comme le nôtre, c'est l'humour. » Albert Einstein
    J'entends et j'oublie. Je vois et je me souviens. Je fais et je comprends . Confucius
    Si votre seul outil est un marteau, vous aurez tendance a ne voir que des clous

  3. #3
    Membre expérimenté
    Avatar de retwas
    Homme Profil pro
    Développeur Delphi
    Inscrit en
    mars 2010
    Messages
    612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Côte d'Or (Bourgogne)

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

    Informations forums :
    Inscription : mars 2010
    Messages : 612
    Points : 1 455
    Points
    1 455
    Billets dans le blog
    4

    Par défaut

    Comme le dit Sergio il manque le 0.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    procedure TForm2.ComboBox1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
       if (Key = VK_DOWN) and (ComboBox1.itemindex = ComboBox1.items.Count - 1) then
       begin
          ComboBox1.itemindex := 0;
          Key := 0;
       end
       else if (Key = VK_UP) and (ComboBox1.itemindex = 0) then
       begin
          ComboBox1.itemindex := ComboBox1.items.Count - 1;
          Key := 0;
       end;
    end;

  4. #4
    Nouveau membre du Club
    Inscrit en
    novembre 2004
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : novembre 2004
    Messages : 34
    Points : 26
    Points
    26

    Par défaut

    Merci beaucoup.
    C'était trop simple ! Surtout que j'avais déjà rencontré ce genre de remise à zéro de key et je ne m'en suis pas souvenu.
    Bonne soirée
    Gab

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

Discussions similaires

  1. [WIN32][d7] Existance composant (Tmenu couplé avec TComboBox) ?
    Par hepha1970 dans le forum Composants VCL
    Réponses: 0
    Dernier message: 09/12/2007, 14h50
  2. Bizarreries avec mon listener:TNS-12560
    Par pascal_T dans le forum Administration
    Réponses: 4
    Dernier message: 17/04/2007, 10h54
  3. Bizarrerie avec le ET logique (&)
    Par molotov dans le forum C
    Réponses: 16
    Dernier message: 19/03/2007, 00h13
  4. bizarrerie avec l'appel system read sous linux.
    Par Hypnocrate dans le forum C
    Réponses: 20
    Dernier message: 20/11/2005, 02h47
  5. bizarreries avec le port serie
    Par bill baroud dans le forum MFC
    Réponses: 3
    Dernier message: 20/10/2005, 17h35

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