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 :

Question OnClick TTrackBar.


Sujet :

Composants FMX Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Juillet 2015
    Messages : 64
    Par défaut Question OnClick TTrackBar.
    Bonjour,

    J´ai une petite question sur la TrackBar.
    Est ce que il y a une possibilitée de faire (voire code) dans l´évenement OnClick sans utiliser le TrackBar.Tag
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    ......
    Var X: Integer;
     
    Begin
        X := TTrackBar(Sender).Tag; //<--- Il est déjà utilisé pour autre chose!
       If PremierClick then ShowMessage('Premier click');
       If DeuxiemeClick then ShowMessage('Deuxième Click');
    End;
    Merci d´avance.

  2. #2
    Membre Expert

    Homme Profil pro
    au repos
    Inscrit en
    Février 2014
    Messages
    429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : au repos

    Informations forums :
    Inscription : Février 2014
    Messages : 429
    Par défaut
    Bonjour,

    Et si tu nous disais ce que tu veux réellement obtenir ?
    Utilité de distinguer les clics ?

    Cordialement
    Thierry

  3. #3
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Juillet 2015
    Messages : 64
    Par défaut
    Citation Envoyé par ThWilliam Voir le message
    Bonjour,

    Et si tu nous disais ce que tu veux réellement obtenir ?
    Utilité de distinguer les clics ?
    Oui distinguer les clics.

    Si je click la premmière fois je veux executer quelque chose, et si je click la deuxième fois je veut executer autre chose.
    Et tout cela sans utiliser le TrackBar.tag et aussi sans changer TrackBar.value

  4. #4
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 972
    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 972
    Par défaut
    Tu peux ajouter un entier dans la partie privée de ta classe fiche pour stoker le nombre de fois où tu as cliqué, et augmenter ce chiffre à chaque clic.

    Cependant, tu n'exprimes pas ce que tu veux faire de manière claire.

    Sur quoi tu cliques ?
    Si je me contente de se que tu écrit je suppose que tu cliques sur le TrackBar. Ce n'est pas un comportement habituel à moins de vouloir changer la Value (mais ce n'est pas ce que tu fait).

    A quoi correspond ce X ?
    Comme ça je dirai que ça correspond au nombre de clics mais ça n'est pas clair.

    Comme l'a suggéré Thierry, dis nous quel est le but fonctionnel que tu souhaite obtenir

  5. #5
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juillet 2015
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Juillet 2015
    Messages : 64
    Par défaut
    Citation Envoyé par popo Voir le message
    Tu peux ajouter un entier dans la partie privée de ta classe fiche pour stoker le nombre de fois où tu as cliqué, et augmenter ce chiffre à chaque clic.

    Cependant, tu n'exprimes pas ce que tu veux faire de manière claire.

    Sur quoi tu cliques ?
    Si je me contente de se que tu écrit je suppose que tu cliques sur le TrackBar. Ce n'est pas un comportement habituel à moins de vouloir changer la Value (mais ce n'est pas ce que tu fait).

    A quoi correspond ce X ?
    Comme ça je dirai que ça correspond au nombre de clics mais ça n'est pas clair.

    Comme l'a suggéré Thierry, dis nous quel est le but fonctionnel que tu souhaite obtenir
    Ok,

    Non le X me donne la TrackBar sélectionée.
    Maintenant si je clic sur la TrackBar (n´importe ou) elle doit envoyer une sequence vers un port pour allumer une lampe.
    Si je clic la deuxième fois elle doit envoyer une séquence vers le meme port pour l´éteindre.
    Après ca et independent du on ou off, j´utilise la TBar[X].Value pour varier la luminosité.

    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
     
    Var
      i: Integer;
    begin
      TBar[0] := TrackBar1;
      TBar[1] := TrackBar2;
      TBar[2] := TrackBar3;
      TBar[3] := TrackBar4;
      TBar[4] := TrackBar5;
      TBar[5] := TrackBar6;
      TBar[6] := TrackBar7;
      TBar[7] := TrackBar8;
     
      for i := 0 to 7 do
      Begin
        TBar[i].Min := 0;
        TBar[i].Max := 100;
        TBar[i].Tag := i;
        //TBar[i].Value := 0;
        TBar[i].Visible := False;
        DimPortState[i] := False;
      End;

  6. #6
    Membre Expert

    Homme Profil pro
    au repos
    Inscrit en
    Février 2014
    Messages
    429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : au repos

    Informations forums :
    Inscription : Février 2014
    Messages : 429
    Par défaut
    Comme tu utilises plusieurs trackbars, une seule variable ne suffit plus pour distinguer le premier clic du deuxième.

    2 solutions :
    1) utiliser un tableau boolean de même dimension que TBar :> FirstClick:= array[0..7] of boolean (à initialiser dans ton code, et à modifier dans l'événement OnClick)
    2) se servir d'une propriété de TTrackbar non utilisée (puisque le Tag est pris). Je pense particulièrement à la propriété PageSize qui ne sert qu'au déplacement par les touches PageDown, PageUp. Tu pourrais t'en servir comme deuxième Tag.

    Cordialement
    Thierry

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

Discussions similaires

  1. Question onclick
    Par mitchreward dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 19/09/2012, 20h35
  2. Question avec onclick
    Par youtch dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 29/06/2009, 18h20
  3. petite question sur un onclick
    Par Nebulis dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 22/01/2008, 12h17
  4. Question de faisabilité
    Par lisarasu dans le forum CORBA
    Réponses: 3
    Dernier message: 14/05/2002, 11h26
  5. [HyperFile] 2 questions de débutant
    Par khan dans le forum HyperFileSQL
    Réponses: 2
    Dernier message: 29/04/2002, 23h18

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