• Aucun résultat trouvé

37 Rendre dynamique la légende d'une case à cocher (ou

N/A
N/A
Protected

Academic year: 2022

Partager "37 Rendre dynamique la légende d'une case à cocher (ou "

Copied!
4
0
0

Texte intégral

(1)

Fiche

technique

37 Rendre dynamique la légende d'une case à cocher (ou

d'un bouton, ou ...)

1 En Script GeoGebra 2 En JavaScript

QR Code

http://url.univ-irem.fr/ft1

Il est possible de modifier dynamiquement la légende associée à n'importe quel objet de GeoGebra . Si, dans la plupart des cas, cette manipulation ne présente que peu d'intérêt, en revanche, il peut s'avérer intéressant de modifier la légende d'une case à cocher en fonction de son état.

La case est cochée La case n'est pas cochée

Lors de la création d'une case à cocher, l'utilisateur est amené à fournir une légende qui, par défaut, reste figée. Pour remédier à cela, il est nécessaire de recourir au langage de script intégré au logiciel.

Comme il a été vu dans la fiche technique Montrer ou cacher un objet (page 231), une case à cocher permet, en particulier, de mo- difier la visibilité d'un objet. Dans cette fiche, nous considérerons une case à cocher qui permet de montrer ou de cacher un point A et nous supposerons que le booléen associé à cette case s'appelle case .

1

En Script GeoGebra

• En effectuant un clic avec le bouton droit de la souris sur la case à cocher, et en choisissant le menu Propriétés... , ouvrir le panneau des propriétés de la case à cocher.

• Choisir l'onglet Script.

• Dans l'onglet Par actualisation, inscrire la commande :

SoitLégende[case,Si[case,"Cacher le point A","Montrer le point A"]]

• Valider en cliquant sur le bouton

OKOK

.

Méthode

Comme son nom l'indique, l'instruction

SoitLégende[<objet>,<texte>]

permet d'affecter une légende

Rendre dynamique la légende d'une case à cocher (ou d'un bouton, ou ...) 383

(2)

donnée à un objet donné. L'objet est fourni en tant que premier paramètre de l'instruction et, dans notre cas, il s'agit de la case à cocher nommée case .

La légende, passée en tant que second paramètre, est bâtie à l'aide d'une instruction

Si

dont la syntaxe est la suivante :

Si[<condition>,<valeur si vraie>,<valeur si fausse>]

.

On rappelle que, lorsqu'une case est cochée, le booléen qui lui est associé vaut

true

, ou

false

dans le cas contraire. Ainsi, dans notre exemple, l'instruction

Si

renvoie la valeur "Cacher le point A" lorsque la case est cochée et la valeur "Montrer le point A" sinon. Ici, la condition écrite sous la simple forme

case

est équivalente à

case==true

. Dans le cadre de cette seconde syntaxe, l'opérateur de comparaison == permet de vérifier que le booléen case a pour valeur

true

. Un booléen peut être comparé aux valeurs

true

ou

false

, ou bien aux valeurs 0 ou 1 .

Ouvrir le fichier exemple

2

En JavaScript

Parfois, le langage GeoGebraScript se révèle insuffisant pour accomplir toutes les actions désirées par l'auteur du fichier et il est alors nécessaire d'utiliser des méthodes uniquement accessibles par le langage JavaScript.

Malheureusement, il n'existe pas de fonction JavaScript permettant de modifier la légende d'un objet. On peut alors se rabattre sur la méthode générique

evalCommand(<texte>)

qui évalue le texte passé en paramètre comme s'il s'agissait d'une commande GeoGebra . Cependant, cette méthode nécessite que le nom des commandes soit écrit en anglais. Dans l'exemple ci-dessous, nous utilisons donc la commande

SetCaption

(nom anglais de la commande

SoitLégende

) et la commande

If

(nom anglais de la commande

Si

).

• Ouvrir le panneau des propriétés de la case à cocher.

• Choisir l'onglet Script.

• Dans l'onglet Par actualisation, sélectionner JavaScript dans la liste déroulante.

• Puis, taper la commande :

ggbApplet.evalCommand('SetCaption[case,If[case,"Cacher le point A","Montrer le point A"]]');

• Valider en cliquant sur le bouton

OKOK

.

Méthode

JavaScript considère la commande GeoGebra passée en paramètre à l'instruction

evalCommand

comme une chaîne de caractères. En tant que telle, il faut l'encadrer par des guillemets doubles (

"..."

) ou par des guillemets simples (

'...'

). Mais, dans le cas présent, la commande GeoGebra contient elle-même des guillemets doubles et il est donc recommandé ici de se servir des guillemets simples pour encadrer le texte fourni en paramètre à

evalCommand

. Néanmoins, il aurait tout de même été possible d'utiliser des guillemets doubles à condition

« d'échapper » ceux présents au sein de la commande GeoGebra en écrivant \" au lieu de " . La commande JavaScript deviendrait ainsi :

384

commissioninter

T REM

CE

(3)

ggbApplet.evalCommand("SetCaption[case,If[case,\"Cacher le point A\",\"Montrer le point A\"]]");

De la même manière, il est possible d'inclure un guillemet simple au sein d'une chaîne elle-même encadrée par d'autres guillemets simples en tapant \' au lieu de ' , ce qui peut se révéler utile dans le cas où des objets GeoGebra sont nommés à l'aide de la notation « prime ». Par exemple, si on désire modifier la légende d'une case à cocher nommée case' et liée à un point A

'

, on peut écrire :

ggbApplet.evalCommand('SetCaption[case\',If[case\',"Cacher le point A\'","Montrer le point A\'"]]');

ou bien

ggbApplet.evalCommand("SetCaption[case',If[case',\"Cacher le point A'\",\"Montrer le point A'\"]]");

Ouvrir le fichier exemple

Rendre dynamique la légende d'une case à cocher (ou d'un bouton, ou ...) 385

(4)

Références

Documents relatifs

Turquoise Events associé à Esprit Village, l’association des commerçants de Saint-Tropez et en partenariat avec la ville de Saint-Tropez, ont œuvré pour nous offrir un marché

Malgré l’importance qu’elle semble avoir dans la gestion du réseau interne d’innovation de la firme, nous avons pu constater que cette question de la dynamique des centres

Alors que le numérique semble anéantir toute forme de matérialité et donc d'empreinte, nous sommes convaincues qu'en repensant cette trace comme une transcription

Cependant, nous croyons qu’une analyse de cette situation et des caractéristiques qui influencent cette politique peut présenter des éléments de réflexion d’un intérêt

DEMANDE MANUSCRITE D'INEAT : exemplaire libellé à l'attention de chaque directeur académique du ou des départements d'accueil sous couvert de monsieur le

Nous avons formalis´e les concepts de base de cette approche, et ceux-ci ont constitu´e les ´el´ements d’un langage m´etier, nomm´e Ocelet, que nous avons d´efini. Les outils

Nous proposons dans cette étude d’exploiter des approches par remaillage adaptatifs 3D pour ana- lyser l’évolution dynamique des boucles de dislocations dans un cadre générique..

Pour cette raison, une étude a été menée 3 avec pour objectif de renouveler sa datation en confrontant l’étude stylistique à l’analyse de la chaux (AMS), méthode de