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

 Delphi Discussion :

Problème avec (Sender as..)


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 125
    Par défaut Problème avec (Sender as..)
    bonsoir,

    j'ai un p'tit souci insolvable! Sur une fiche j'ai un bouton et un timer qui servira à determiner si on appuie sur le bouton.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if (Sender as TSpeedButton) then showmessage('sdf');
    J'utilise la ligne ci-dessus mais je n'arrive pas à l'utiliser car il manque quelquechose entre "if (Sender as TSpeedButton)" et "then showmessage('sdf');"

    si un âme charitable pouvait mettre fin à ma torture cérébrale.....

    merci

  2. #2
    Expert confirmé
    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 : 62
    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
    Par défaut
    Salut

    Si tu cherches à savoir si le Sender est un TSpeedButton alors la condition est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      if (Sender is TSpeedButton) then ...
    @+ Claudius

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 125
    Par défaut
    mais il manque quelquechose aprés avoir fermé la parenthése je ne trouve pas quoi dailleur!

    d'autre part avec is je voit pas comment tu peut différencier un bouton d'un autre!

  4. #4
    Expert confirmé
    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 : 62
    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
    Par défaut
    Salut

    Il faudrait que tu nous expliques ce que tu souhaites faire exactement, et décrire le contexte dans lequel tu es.

    Citation Envoyé par fred7
    d'autre part avec is je voit pas comment tu peut différencier un bouton d'un autre!
    Oui bien sûr, is t'indiquera uniquement si le Sender est une classe TSpeedButton.

    @+ Claudius.

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

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 553
    Par défaut
    C'est vrai que c'est pas clair ...
    Si tu as 30 boutons (bonjour l'acné !) sur le même event et que tu veut savoir si c'est le bouton Bt31 (c'est son nom) qui l'a déclenché tu fais un truc style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if Sender is TspeedButton then   
       if tSpeedButton(sender).name= 'Bt31' then showMessage( 'Youpi!!');

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 125
    Par défaut
    C'est vrai que c'est pas clair ...
    Si tu as 30 boutons (bonjour l'acné !) sur le même event et que tu veut savoir si c'est le bouton Bt31 (c'est son nom) qui l'a déclenché tu fais un truc style :
    Code :

    if Sender is TspeedButton then
    if tSpeedButton(sender).name= 'Bt31' then showMessage( 'Youpi!!');
    J'ai tester et ça ne marche pas

    Mais sur le principe c'est ça! j'ai un code affreusement long qui doit se faire a chaque appuis sur un bouton alors sachant que j'ai 16 boutons et que je ne veut pas répéter cet énorme code 16 fois (et aussi parceque c franchement moche) je veux mettre le code dans un timer qui définira quel bouton à été appuyé.

    voilà vous savez tout sur le pourquoi du comment

Discussions similaires

  1. [Débuter] [QNetworkReply] Problème avec sender
    Par htristra dans le forum Réseau
    Réponses: 2
    Dernier message: 31/08/2011, 14h07
  2. Problème de comparaison avec "sender"
    Par vgiant dans le forum VB.NET
    Réponses: 5
    Dernier message: 13/09/2009, 13h10
  3. Réponses: 2
    Dernier message: 02/10/2008, 12h06
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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