begin process at 2010 02 10 13:09:49
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Delphi

 > 

Archives

 > 

Divers

 > 

groupe de bouttons ?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

groupe de bouttons ?

vendredi 6 janvier 2006 à 18:00:21 | groupe de bouttons ?

akrame

Bonjour je voudrai savoir comment faire pour attribuer 1 seul événement a plusieurs boutton .
par exemple , pour une calculatrice , je mé 10 bouton chacun a sur son caption un numéro entre 0 et 9 . A chaque clique sur un de ces bouttons , un seul et meme événement. ( l'affectation du numéro correspondant au bouton à une variable integer )  .

voila pour faire plus claire :

procedure TfrmMain.ButtonXClick(Sender: TObject);
begin
   variable : = StrToInt(boutonx.caption)
end


il est possible de faire ça en VB , en créant des groupes de boutons , ( c comme des tableaux ) ; chaque bouton a un indice de 0 à n , le code sera donc :
variable := StrToInt(mongroupe[i].caption) , mongroupe[i] représentant le bouton clické .

Akrame

vendredi 6 janvier 2006 à 19:06:21 | Re : groupe de bouttons ?

jlen100

Membre Club
Réponse acceptée !
salut,
tu peux utilisier une groupebox:
Begin
  With GroupBox1 Do
    For I := 0 To ControlCount-1 Do // avec tous les controles de GroupBox1 fait
      If Controls[I] is TButton Then // si Controls[I] est un TButton alors
       begin
          //tu mets ton traitement
       end;
end;

@+
jlen

vendredi 6 janvier 2006 à 20:40:26 | Re : groupe de bouttons ?

sisi231

Membre Club
Réponse acceptée !

La méthode classique est de reprendre le paramètre sender et de le transtyper ex :

(cet événement sera le même i e tous les gestionnaires d'événements de tes boutons pointeront dessus).

procedure Button1Click (sender :TObject);
begin
variable :=TButton(sender).caption;
end;

Sender est l'"envoyeur" du message relatif à l'événement, reste à le transtyper en le type que l'on suppose qu'il est.

SISI231

samedi 7 janvier 2006 à 03:54:28 | Re : groupe de bouttons ?

cirec

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
tu peux aussi utiliser les tags
pour 10 boutons de 0 à 9 dans l'inspecteur d'objets  tu affectes 0 à Button0.Tag  1 à Button1.Tag etc etc
puis dans la procedure

Var IntValeur : Integer;
procedure Button1Click (sender :TObject);
begin
  If (Sender is TButton) Then
     IntValeur = TButton(sender).Tag;
end;



Var IntValeur : Integer;
      StrValeur : String;
Procedure Button1Click (Sender :TObject);
Begin
  If (Sender is TButton) Then
   With TButton(Sender) Do
   Begin
     IntValeur = Tag;
     StrValeur = Caption; 
   End;
End;





@+
Cirec
samedi 7 janvier 2006 à 07:02:24 | Re : groupe de bouttons ?

neodelphi

Membre Club
Je suis d'accord avec Cirec les tags c'est plus pratique et plus propre je pense...

neodelphi
samedi 7 janvier 2006 à 08:23:29 | Re : groupe de bouttons ?

jlen100

Membre Club
dans le même genre comme les touches d'un clavier numérique n'ont généralement comme  caption que les chiffres '0'..'9'  tu peux aussi utiliser directement le caption en regroupant tous les évènements soit dans un seul onclick (du bouton '0' par exemple) soit ne ajoutant une actionlist
Var IntValeur : Integer;
Procedure clavierClick (Sender :TObject);
Begin
   With clavier(Sender) Do
   Begin
     IntValeur = strtoint( Caption);
   End;
End;
pour ce genre de programme il doit y avoir autan de solutions que de programmeurs!!
@+
jlen

samedi 7 janvier 2006 à 09:06:10 | Re : groupe de bouttons ?

jlen100

Membre Club
Réponse acceptée !
on peut même aller plus loin:
on utilse le tag pour affecter le type de touche pressée
si l'on met une action caculette qui sera appelée par chaque touche de la calculette on aura:
procedure TForm1.calculetteExecute(Sender: TObject);
begin
   With clavier(Sender) Do
   Begin
       case tag of
        0: //ajouter le chiffre à la saisie par exemple
            saisie.text:=saisie.caption+clavier.caption;// l'utilisation d'un TEdit permet de saisir directement dans la zone on peut y rajouter un filtre de saisie
        1://multiplication;
        2://division;
        3://addition
        4://soustraction
.........// et ainsi de suite pour les atures opérations (sin,...,mise en mémoire etc...)
        end;
   End;
end;
@+
jlen


samedi 7 janvier 2006 à 12:18:31 | Re : groupe de bouttons ?

akrame


Woah ya tellement de solutions ! :) Merci tout le monde :) merci infiniment .
Akrame ------
dimanche 8 janvier 2006 à 11:19:31 | Re : groupe de bouttons ?

neodelphi

Membre Club
Essaye la solution de jlen, elle à l'avantage de pouvoir implémenter une extension à ta calculatrice à l'avenir: la programmer. En effet si par la suite tu as besoin d'exécuter une séquence de calcul depuis un fichier, tu n'as juste qu'a faire une boucle et utiliser le case.

neodelphi


Cette discussion est classée dans : bouton, variable, caption, groupe, bouttons


Répondre à ce message

Sujets en rapport avec ce message

variable dans le nom d'un composant [ par thonyboy ] Bonjour,Je cherche a faire un truc du genre :Supposons X composants Tlabels et 1 variable ICase of I 1: Tlabel1.caption := 'Label1' 2: Tlabel2.capti Effacer label en groupe [ par benumiit82 ] Bonjour, voila ma question est très simple... sur ma fenetre j'ai plein de caption, de edit... Je voudrais savoir si y'a une syntaxe qui permettrais un variable qui perd sa valeur lors du hide d'une fiche secondaire [ par cricri_b34 ] salutj'ai une variable (globale) qui enregistre l'emplacement du fichier en cours d'utilisation.le probleme cest que quand je fait afficher une autre Problème inconnu ... dans l'évenement OnClick d'un bouton [ par Yil2201 ] Salut, voila je fais pour mon plaisir le design d'un antivirus, seulement lorsque j'ai créé la bouton pouractiver une des protections en temps réel ce Compos Bouton + Caption [ par louiwahl ] Bjr a tous Voila je suis toujour avec mon composant bouton maintenant deriver de TGraphicControl et qui marche mieux grace a "Cirec" que je remerc TBitBtn et occupation mémoire [ par Aurel184 ] Bonjour,j'utilise dans une application Delphi Win32 des TBitBtn pour afficher des images sur mes boutons. Le problème est que quand je desactive mon b Caption de bouton avec 2 Font.Style [ par mcapp ] Bonjour,Je voudrais savoir s'il est envisageable d'obtenir une caption sur un bouton (comme le TSimpleBtn du composant MyButtons) avec deux styles Fon groupe de controle [ par papi jim ] Bonjour, je voudrais savoir s'il est possible de créer des groupes de controles a la maniere de VB. Mon but est d'avoir plusieurs labels et de pouvoi A propos du tag [ par cavalier2400 ] Bonsoir, je connais juste la valeur du tag d'un bouton, exemple=2, et je connais ni le nom de ce bouton, ni son caption, comment faire pour exécuter l Une Petite Question ;) [ par ff1061 ] Bonjour tout le monde, C'est mon 1er post sur se site..à l'école on commence a voir le language Delphi ( que je trouve assez interessant ;) ).Mais je


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales