#########################
# Lexique des variables #
#########################
# var contient le nombre du bouton cliquée
# zero est un booléen qui contient si une opération à été choisie
# oper contient une chaine définissant l'opération choisie
############
# Fonction #
############
#proc lanceOperation {nb1 oper nb2}{
# return [expr nb1 oper nb2]
#}
set zero 0
wm geometry . 300x300
button .b1 -text "1" -command {
if {$zero == 1}{
set nb2 &nb21
set calcul $nb2
} else {
set nb1 $nb11
set calcul $nb1
}
}
button .b2 -text "2" -command {
if {$zero == 1}{
set nb2 &nb22
set calcul $nb2
} else {
set nb1 $nb12
set calcul $nb1
}
}
button .b3 -text "3" -command {
if {$zero == 1}{
set nb2 $nb23
set calcul $nb2
} else {
set nb1 $nb13
set calcul $nb1
}
}
button .b4 -text "4" -command {
if {$zero == 1}{
set nb2 $nb24
set calcul $nb2
} else {
set nb1 $nb14
set calcul $nb1
}
}
button .b5 -text "5" -command {
if {$zero == 1}{
set nb2 $nb25
set calcul $nb2
} else {
set nb1 $nb15
set calcul $nb1
}
}
button .b6 -text "6" -command {
if {$zero == 1}{
set nb2 $nb26
set calcul $nb2
} else {
set nb1 $nb16
set calcul $nb1
}
}
button .b7 -text "7" -command {
if {$zero == 1}{
set nb2 $nb27
set calcul $nb2
} else {
set nb1 $nb17
set calcul $nb1
}
}
button .b8 -text "8" -command {
if {$zero == 1}{
set nb2 $nb28
set calcul $nb2
} else {
set nb1 $nb18
set calcul $nb1
}
}
button .b9 -text "9" -command {
if {$zero == 1}{
set nb2 $nb29
set calcul $nb2
} else {
set nb1 $nb19
set calcul $nb1
}
}
button .b0 -text "0" -command {
if {$zero == 1}{
set nb2 $nb20
set calcul $nb2
} else {
set nb1 $nb10
set calcul $nb1
}
}
button .beq -text "=" -command {
set calcul [expr $nb1 $oper $nb2]
}
button .bpl -text "+" -command {
set oper +
set zero 1
}
pack .title
place .zone -relx 0.05 -rely 0.1 -anchor nw
place .b1 -relx 0.1 -rely 0.2 -anchor n
place .b2 -relx 0.25 -rely 0.2 -anchor n
place .b3 -relx 0.40 -rely 0.2 -anchor n
place .b4 -relx 0.1 -rely 0.31 -anchor n
place .b5 -relx 0.25 -rely 0.31 -anchor n
place .b6 -relx 0.40 -rely 0.31 -anchor n
place .b7 -relx 0.1 -rely 0.42 -anchor n
place .b8 -relx 0.25 -rely 0.42 -anchor n
place .b9 -relx 0.40 -rely 0.42 -anchor n
place .beq -relx 0.1 -rely 0.53 -anchor n
place .b0 -relx 0.25 -rely 0.53 -anchor n
place .bpl -relx 0.40 -rely 0.53 -anchor n
Je suis en train de coder un calculatrice et j'obtiens ce message d'erreur lors d'un clic sur un bouton :
Citation : Erreur
extra characters after close-brace
extra characters after close-brace
while compiling
"if {$zero == 1}{
set nb2 &nb21
set calcul $nb2
} else {
set nb1 $nb11
set calcul $nb1
}
"
invoked from within
".b1 invoke"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list $w invoke]"
(procedure "tk::ButtonUp" line 22)
invoked from within
"tk::ButtonUp .b1"
(command bound to event)
ça c'est résolu ! Il suffisait de mettre des espaces entre les blocs !
Maintenant, je cherche comment faire pour faire un casting d'un entier vers un réel !
[TCL / TK]
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.