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 FMX Delphi Discussion :

Absence de l'événement OnKeyPress dans FMX


Sujet :

Composants FMX Delphi

  1. #1
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2015
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Janvier 2015
    Messages : 17
    Points : 10
    Points
    10
    Par défaut Absence de l'événement OnKeyPress dans FMX
    Besoin d'aide
    Sur mon programme de résolution de SUDOKU j'utilise l'évenement OnKeyPress pour filtrer les caractères entrés de 0 à 9
    avec passage auto à la cellule suivante.
    Quel évenement prendre pour faire la même chose avec Delphi 10.1 Berlin en FMX, je sèche voici mon code


    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
    26
    27
    procedure TForm1.StringGrid1KeyPress(Sender: TObject; var Key: Char);
    var Select : TGridRect;
    begin
    if not fin then
    begin
      Select:=StringGrid1.Selection;
     
      if (Ord(Key)<48) or (ord(Key)>57)then
         Key:=#48;
     
      if (Key<>#48) then StringGrid1.Cells[Select.Left,Select.Top]:=Key
                    else StringGrid1.Cells[Select.Left,Select.Top]:='';
     
     
      if Select.Left<8 then Select.Left:=Select.Left+1
      else
      if Select.Top<8 then
      begin
        Select.Left:=0;
        Select.Top:=Select.Top+1;
      end;
     
      Select.Right:=Select.Left;
      Select.Bottom:=Select.Top;
      StringGrid1.Selection:=Select;
     end; 
    end;

  2. #2
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2015
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Janvier 2015
    Messages : 17
    Points : 10
    Points
    10
    Par défaut
    Je n'ai pas trouvé l'évenement OnKeyUp avec Delph 10.1 Berlin ??????

  3. #3
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 877
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 877
    Points : 11 373
    Points
    11 373
    Billets dans le blog
    6
    Par défaut
    Il est public mais pas published, donc absent de l'inspecteur d'objet : http://docwiki.embarcadero.com/Libra...ingGrid_Events.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 399
    Points : 646
    Points
    646
    Par défaut
    ne cherche pas j'avais pas vu que tu utilisais une TStringGrid

    comme le dit tourlourou comme il n'est pas published il n'est pas visible dans l'inspecteur d'objet, mais tu peux t'y connecter par code.

  5. #5
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 676
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 676
    Points : 7 083
    Points
    7 083
    Par défaut
    Quel est l'intérêt de ne pas le mettre en publié ?

  6. #6
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2015
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Janvier 2015
    Messages : 17
    Points : 10
    Points
    10
    Par défaut
    L'évenement OnkeyUp n'est pas publié OK , que faut il faire pour le rendre utilisable, ou plutôt quel code faut il écrire ??? c'est ma question quelqu'un peut il me répondre

  7. #7
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 877
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 877
    Points : 11 373
    Points
    11 373
    Billets dans le blog
    6
    Par défaut
    Il faut que tu crées une méthode d'objet qui répondra au prototype du gestionnaire d'événement désiré, et tu l'affecteras par code, style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure TForm1.MonGestionnaireIlSentaitBonLeSableChaud(var Key: Word; var KeyChar: WideChar; Shift: TShiftState);
    begin
      //...
    end;
     
    procedure TForm1.Create;
    begin
      inherited;
      OnKeyDown := MonGestionnaireIlSentaitBonLeSableChaud;
    end;

  8. #8
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2015
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Janvier 2015
    Messages : 17
    Points : 10
    Points
    10
    Par défaut
    Ton code ne marche pas
    dans onKeyUp:=Mongestionnaire
    le programme me demande des parametres

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 399
    Points : 646
    Points
    646
    Par défaut
    c'est normal la déclaration est

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TForm2.FormKeyUp(Sender: TObject; var Key: Word; var KeyChar: Char;
      Shift: TShiftState);
    begin
    
    end;

Discussions similaires

  1. [NDK] Lister les évenement engregistrer dans le Calendrier local.
    Par hdkerhac dans le forum Android
    Réponses: 1
    Dernier message: 29/04/2014, 20h12
  2. Plus de "Hint" dans FMX
    Par arkhamon dans le forum Composants FMX
    Réponses: 0
    Dernier message: 24/04/2012, 12h28
  3. évenement onclick dans mes pages php
    Par diblasio dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/03/2010, 18h20
  4. l'évenement Onkeypress en javascript
    Par slipknotik dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 07/10/2009, 12h34
  5. [VB6]Initialiser une variable Static dans un évenement
    Par loverdose dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 20/01/2005, 14h57

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