page 67 de 93
procedure Tformulaire.btnButtonmultClick(Sender: TObject);
begin
n1:=StrToInt(edtNum.Text);
flag := 1;
op := 3;
end;
procedure Tformulaire.btnButtondivClick(Sender: TObject);
begin
n1:=StrToInt(edtNum.Text);
flag := 1;
op := 4;
end;
procedure Tformulaire.btnButtonclearClick(Sender: TObject);
begin
edtNum.Text := '';
flag := 1;
end;
procedure Tformulaire.btnButtonequalClick(Sender: TObject);
begin
n2:=StrToInt(edtNum.Text);
case op of
1: n3:=n1+n2;
2: n3:=n1-n2;
3: n3:=n1*n2;
4: n3:=n1/n2;
end;//case
edtNum.Text:=FloatToStr(n3);
flag := 1;
end;
procedure Tformulaire.btnButtonArretClick(Sender: TObject);
begin
Close;
end;
end.
7.8.3 Explication du code
Les méthodes invoquées par les boutons 0...9 de la calculatrice étant similaires, on peut se servir
d’une seule procédure (au lieu de dix !!) pour réagir à l’actionnement des différentes touches numé-
riques.
Cette procédure commune étant définie uniquement pour l’événement
btnButton0Click
«
procedure Tformulaire.btnButton0Click(Sender : TObject)
», les neuf au-
tres touches numériques doivent donc produire le même événement. Pour cela, on choisira dans
l’onglet « Events » de l’inspecteur d’objets la bonne procédure
btnButton0Click
.
Pour discerner la touche numérique qui a déclenché la procédure et ainsi donner la bonne valeur à la
variable
strNum
, on compare le contenu de la variable
Sender
avec les noms des différentes tou-
ches numériques
(if Sender = btnButton ... then ...)
.
Kommentare zu diesen Handbüchern