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 :

Trouver le composant ayant le focus sur une fiche?


Sujet :

Composants VCL Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 116
    Points : 112
    Points
    112
    Par défaut Trouver le composant ayant le focus sur une fiche?
    Bonjour,

    sur une fiche, j'ai plusieurs TEdit, je cherche à savoir lequel d'entre eux à le focus,


    merci,

    Fred

  2. #2
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Form1.ActiveControl
    Te renvoie le controle de la fiche détenant la focalisation !

    @+

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 116
    Points : 112
    Points
    112
    Par défaut
    Malgré une longue recherche, je n'ai rien trouvé, et c'était tout simple !

    Merci beaucoup pour ta réponse rapide !


    Fred

  4. #4
    Membre habitué
    Inscrit en
    Avril 2005
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 123
    Points : 132
    Points
    132
    Par défaut
    Citation Envoyé par Claudius40
    Salut.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Form1.ActiveControl
    Te renvoie le controle de la fiche détenant la focalisation !

    @+
    Je crois qu'il parle de plusieurs edit sur une seule fiche.

    Tu fais dans ce cas

    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
     
     
    VAR focusse:BOOLEAN;             //True si focus trouvé
          index_focusse:INTEGER;      // Index du controle avec focus 
          nom_focusse:STRING          // Le nom du controle
     
    //....
    //ton code ici
    //....
     
    index_focusse:=0;
    focusse:=false;
    WHILE (index_focusse<=mafiche.componentCount)
             AND NOT focusse DO
    BEGIN
          focusse:=TControl(mafiche.component[index_focusse]).focused; //De toute façon ya  qu'un seul focused sur la fiche
          INC(index_focusse);
    END;
    IF focusse   //Juste pour protection, si ta fiche est active, elle sera toujours TRUE
       THEN begin 
              nom_focusse:=TControl(mafiche.component[index_focusse].name;
              showmessage('A le focus:'+nom_focusse);
             end;
     
    //...
    Peut etre qu'il y a plus court aussi...

  5. #5
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut.

    A oui, on peut faire plus simple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
      if Form1.ActiveControl is TEdit then
        ShowMessage(TEdit(Form1.ActiveControl).Name);
    @+

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

Discussions similaires

  1. Composant bibliothèque d'image / Focus sur une image ?
    Par pepito62 dans le forum Composants VCL
    Réponses: 2
    Dernier message: 03/11/2010, 11h48
  2. Mettre un composant en arrière plan sur une fiche MDI
    Par ALEX77 dans le forum Composants VCL
    Réponses: 21
    Dernier message: 15/10/2007, 21h06
  3. focus sur une input text
    Par mic79 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/01/2005, 18h06
  4. Focus sur une cellule spécifique d'un DBGrid
    Par danbern dans le forum Bases de données
    Réponses: 4
    Dernier message: 25/11/2004, 19h04
  5. Focus sur une application Windows
    Par mixi dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/10/2004, 19h57

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