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

Bases de données Delphi Discussion :

Touche Entrée dans le DBGrid.


Sujet :

Bases de données Delphi

  1. #1
    Membre habitué Avatar de abdelghani_k
    Inscrit en
    Octobre 2002
    Messages
    184
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Octobre 2002
    Messages : 184
    Points : 150
    Points
    150
    Par défaut Touche Entrée dans le DBGrid.
    Bonjour à tout le monde des développeurs,

    Comment parcourir un dbgrid en utilisant la touche Entrée au même effet que la touche gauche (se déplacer d'une colonne à une autre en utilisant la touche Entrée)?

    Merci d'avance.
    Réussir c'est faire le bon choix.

    Voici ma supper fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fonction ChercherSolution(User_id:login in www.developper.com):Vrai;

  2. #2
    Membre averti
    Avatar de delphichem
    Inscrit en
    Octobre 2002
    Messages
    280
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 280
    Points : 338
    Points
    338
    Par défaut
    Utilise l'evenement onkeydown:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
      if key = 13 then
        if DBGrid1.SelectedIndex < DBGrid1.Columns.Count - 1 then
          DBGrid1.SelectedIndex := DBGrid1.SelectedIndex + 1;
    end;

  3. #3
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    Salut
    J’ai utilisé ce code mais ça n'a pas marché.

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 717
    Points : 5 358
    Points
    5 358
    Par défaut
    Citation Envoyé par delphichem Voir le message
    Utilise l'evenement onkeydown:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
      if key = 13 then
        if DBGrid1.SelectedIndex < DBGrid1.Columns.Count - 1 then
          DBGrid1.SelectedIndex := DBGrid1.SelectedIndex + 1;
    end;
    Salut
    J’ai utilisé ce code mais ça n'a pas marché.
    *

    C'est parce qu'il ne faut pas tester"13" mais "CHR(13)" ou un truc dans le genre. Sinon tu peux tester "VK_RETURN"

    Si le SelectedIndex ne fonctionne, dans ce cas essaie


  5. #5
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 310
    Points
    2 310
    Par défaut
    #13
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  6. #6
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    salut
    popo et Just-Soft
    j'essayerais
    merci.

  7. #7
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    Salut
    Malheureusement ça n'a pas marché ni
    Ni
    Mais dans quel cas les flèches du clavier et la touche entrée ne fonctionnent pas dans un dbgrid et comment faire pour forcer leur

  8. #8
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    Je 'excuse
    ..Leur fonctionnement.
    Merci

  9. #9
    Membre confirmé
    Avatar de JP.NUAGE
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    769
    Détails du profil
    Informations personnelles :
    Âge : 82
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 769
    Points : 542
    Points
    542
    Par défaut
    Voilà un code qui fonctionne parfaitement chez moi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    procedure TFRM_Form.DBGridKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
     
    begin
        if (Key = Key_Enter) or ( key = Key_return) then
           DBGrid.SelectedIndex = DBGrid.SelectedIndex + 1;
    end;
    J'ai fait simple : bien sûr dans un code 'bien fini' il faut tester la position en fonction du nombre de colonnes (comme l'a signalé popo)

    Je n'ai pas essayé VK_RETURN en Delphi, mais en LAZARUS et là ça fonctionne aussi.
    Ce qui se conçoit bien s'énonce clairement
    Et les mots pour le dire viennent aisément (Boileau)

  10. #10
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    salut
    JP.NUAGE
    Ok merci pour le code
    Mais pourquoi les flèches du clavier ne fonctionne pas dans mon dbgrid.

  11. #11
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 310
    Points
    2 310
    Par défaut
    Salut;

    tout simplement parce que le code fournie teste la touche entrée, si tu veux qu'il gère la touche gauche faut l'inclure dans le code, je crois que c'est VK_LEFT à toi de vérifier ça.

    Autre chose, tu dois contrôler les limites pour ne pas avoir erreur si tu es sur la 1ère colonne et tu essais de te déplacer encore à gauche.
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  12. #12
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    salut
    réponse pour JP.NUAGE
    malheureusement ça ne marche pas.
    merci

  13. #13
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    Salut
    Réponse pour
    Just-Soft
    Oui mais normalement les flèches fonctionne par défaut, même si je fais le test
    Vk_up, ou vk_down ça ne marche pas, c'est vraiment fatiguant ce problème de flèches et touches.

  14. #14
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 310
    Points
    2 310
    Par défaut
    Citation Envoyé par youhibadelphi Voir le message
    Salut
    Réponse pour
    Just-Soft
    Oui mais normalement les flèches fonctionne par défaut, même si je fais le test
    Vk_up, ou vk_down ça ne marche pas, c'est vraiment fatiguant ce problème de flèches et touches.
    et si tu enlevé le code complètement qu'est ce que ça va donner ? car à mon avis du moment où tu as décidé d'invoquer le KeyDown tu dois gérer toutes les autres touches, tu as perdu le nation "par défaut".
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  15. #15
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    Salut
    Mais j'ai rien ajouté dans l'événement du Dbgrid? Aussi dans l'événement keydown, et keypress et keyup de la form principale est vide.
    Vraiment ce problème m'empêche d'avancer sur mon projet.

  16. #16
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 310
    Points
    2 310
    Par défaut
    le post du 08/10.....
    Citation Envoyé par youhibadelphi Voir le message
    Salut
    J’ai utilisé ce code mais ça n'a pas marché.
    le post du 19/10.....
    Citation Envoyé par youhibadelphi Voir le message
    Salut
    Mais j'ai rien ajouté dans l'événement du Dbgrid? Aussi dans l'événement keydown, et keypress et keyup de la form principale est vide.
    Vraiment ce problème m'empêche d'avancer sur mon projet.
    je me demande où as-tu utilisé le code pour conclure qu'il ne fonctionne pas ?
    y a pas une contradiction quelque part ?
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  17. #17
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    Salut
    Oui j'ai utilisé plusieurs codes sans résultats, et après j'ais tout effacé de l'événement du dbgrid aussi les flèches du claviers ne fonctionnent pas avec le dbgrid.

  18. #18
    Expert confirmé
    Avatar de anapurna
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2002
    Messages
    3 434
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 434
    Points : 5 846
    Points
    5 846
    Par défaut
    salut

    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
     
    procedure TMaForm.MaGrilleKeyDown(Sender: TObject; var Key: Word;
    	Shift: TShiftState);
    var
      Grid : TDbGrid;
    begin
       if  (key=VK_RETURN) or (key=VK_TAB) Then
       begin
           Grid :=  (Sender as TDbGrid);
           if Grid.FieldCount > Succ(Grid.SelectedIndex)  then
           begin
    	  Keybd_event(VK_RIGHT,0,0,0);
    	  key:=0;
           end
           else
           begin
    	  Grid.SelectedIndex := 0;
    	  Keybd_event(VK_DOWN,0,0,0);
    	  key:=0;
          end;
       end;
       inherited;
    end;
    @+ Phil
    Nous souhaitons la vérité et nous trouvons qu'incertitude. [...]
    Nous sommes incapables de ne pas souhaiter la vérité et le bonheur, et sommes incapables ni de certitude ni de bonheur.
    Blaise Pascal
    PS : n'oubliez pas le tag

  19. #19
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    salut
    anapurna
    j'ai bien copier le code merci

  20. #20
    Membre régulier Avatar de youhibadelphi
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations forums :
    Inscription : Juin 2009
    Messages : 240
    Points : 108
    Points
    108
    Par défaut
    anapurna
    Salut
    J’ai essayé ton code mais mon dbgrid refuse de bouger, c'est comme j'ai ajouter une pierre et pas un composant, mais SVP peut tu m'expliquer un peu ton code.

Discussions similaires

  1. [HTML]Problème avec la touche "entrée" dans un formulaire
    Par WerKa dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 12/06/2007, 20h34
  2. la touche entrée dans une Jtable
    Par grabriel dans le forum Composants
    Réponses: 3
    Dernier message: 04/06/2007, 12h16
  3. [Javascript] appui sur la touche entrée dans une textbox
    Par LE NEINDRE dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 02/01/2006, 11h19
  4. Comment se déplacer avec la touche tab dans un dbGrid ?
    Par bertrand_declerck dans le forum Composants VCL
    Réponses: 2
    Dernier message: 21/09/2005, 15h36
  5. touche entrée dans formulaire
    Par pram dans le forum XMLRAD
    Réponses: 8
    Dernier message: 15/04/2003, 09h13

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