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 :

Comment utilisé Touches de clavier pour naviguer


Sujet :

Bases de données Delphi

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 82
    Points : 0
    Points
    0
    Par défaut Comment utilisé Touches de clavier pour naviguer
    bonjour
    Comment utilisé les Touches de clavier (keyUp,KeyDown) pour naviguer d'un fichier à un autre
    j'ai utilisé cet code sur evenment OnKeyDown
    mais ne fonctionne pas
    if key = vk_up then abstable1.next;
    if key = vk_down then abstable1.prior;
    pour quoi ne fonctionne pas
    merçi

  2. #2
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    Tu devrais mettre une copie de ton code.

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 82
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par philnext Voir le message
    Tu devrais mettre une copie de ton code.
    bonjour
    voila mon code qui j'ai utilisé mais ne fonctionne pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
    if key = VK_Down then abstable1.Next;
    if key = VK_UP then abstable1.Prior;
    end;

  4. #4
    Membre chevronné Avatar de philnext
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 552
    Points : 1 780
    Points
    1 780
    Par défaut
    Si tu mets un point d’arrêt tu y passes sur les lignes qui t'intéressent ?

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 447
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 447
    Points : 24 849
    Points
    24 849
    Par défaut
    Même avec KeyPreview à True pour gérer le OnKeyDown, cela ne capture pas certaines touches dont celle pour le déplacement comme TAB ou les flêches

    Citation Envoyé par aide
    Les touches de navigation (Tab, les touches de déplacement, etc.) ne sont pas affectées par KeyPreview car elles ne génèrent pas d'événements clavier. De même, lorsqu'un bouton détient la focalisation ou lorsque sa propriété Default a la valeur true, la touche Entrée n'est pas affectée par KeyPreview car elle ne génère pas d'événements du clavier.
    Tu dois mettre en place un gestionnaire d'évènement OnMessage en filtrant sur WM_KEYDOWN comme dans ce sujet

    Pense que les controls comme les Edit, Memo, intercepte les touches !
    Un DBGrid ou un TDBNavigator peut aussi intercepter !
    Dans un comportement standard, les fleches permettent de naviguer entre les éléments focusables comme le TButton, ou les TabSheet d'un PageControl !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  6. #6
    Nouveau Candidat au Club
    Inscrit en
    Juin 2006
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 82
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    Même avec KeyPreview à True pour gérer le OnKeyDown, cela ne capture pas certaines touches dont celle pour le déplacement comme TAB ou les flêches
    merçi bcp
    le code marche très bien
    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
    procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
      case Key of
        VK_UP: AbsTable1.Next;
        VK_DOWN: AbsTable1.Prior;
        VK_NEXT: AbsTable1.Next;
        VK_PRIOR: AbsTable1.Prior;
      end;
    end;
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
       KeyPreview := True;
    end;

Discussions similaires

  1. Réponses: 0
    Dernier message: 15/02/2012, 22h18
  2. Réponses: 5
    Dernier message: 28/02/2011, 16h57
  3. [Toutes versions] Changer la valeur d'une touche du clavier . pour ,
    Par possible924 dans le forum VBA Access
    Réponses: 2
    Dernier message: 02/08/2010, 10h31
  4. Réponses: 1
    Dernier message: 04/11/2007, 02h27
  5. Réponses: 5
    Dernier message: 25/07/2005, 09h29

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