Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.
Menu
Calculatrices
Graph 35 à 100
Graph 25+Pro/25+E/25+E II
Graph 35+USB/75(+E)/85/95 SD
Graph 100(+)
Classpad 300/330(+)
fx-CG 10/20 (Prizm)
Classpad 400(+E)
Graph 90+E
fx-92+ SC
Liens
¤ Transférer un programme sur
sa calculatrice

¤ Vous cherchez une fonction ?
Utilitaires >> Graph 35+USB/75(+E)/85/95 SD >> Divers >> Menu deroulant
Menu deroulant
Version : 2.00 Taille : 800 octets Ajouté le : 2011-07-19 21:02 Modifié le : 2015-12-07 14:17
Auteur et posteur :
TotoyoHors ligneMembre d'honneurPoints: 16093 Défis: 102 Message
Planète Casio - Programme Casio - Menu deroulant - totoyo - Calculatrices
Nombre de visites sur cette page : 12936
Score au progrank : 39
Pas encore de note !
Vous devez être connecté(e) pour noter (inscription).
2039 téléchargements | Soumettre un test

Ce programme est sous licence Creative Commons 2.0 BY-NC


Votre calculatrice doit posséder les chaines de caractères (Str) et Menu pour utiliser ce programme. Si vous avez une Graph 85 (SD), mettez-la à jour.
Description :

La fonction Menu est très pratique, mais le code obtenu est brouillon et indigne de tout bon programmeur qui se respecte. En clair :

Lbl/Goto

Je vous propose donc un menu scrollable sans scintillement avec barre de défilement.
Le nombre maximal d'entrées est variable. Nous y viendrons en détail tout à l'heure.


Personnaliser le menu

Entrez les entrées dans l'ordre d'apparition dans Str 1, séparées par une virgule. Ajoutez également une virgule au début et à la fin de Str 1.
Une entrée ne peut pas dépasser les 17 caractères.

Exemple :

",Opt01,Opt02,Opt03,Opt04,"->Str 1


Les entrées peuvent avoir des longueurs différentes (en nombre de caractères).

Exemple :
",Commencer,Nouvelle partie,Options,Crédits,Quitter,"->Str 1


Rappel : la longueur maximale d'une chaine est de 255 caractères, ce qui conditionne le nombre d'entrées de votre menu.


Paramétrage

A partir des données entrées dans Str 1, le programme va générer lui-même les paramètres nécessaires au bon fonctionnement de ce dernier. Ces paramètres sont stockées dans la variable E et la List 1.

La variable E contient le nombre d'entrées du menu.

La List 1 contient deux informations pour accélérer les calculs, l'une stockée dans la partie entière, l'autre dans la partie décimale du nombre. Chaque case correspond à une entrée, triée dans l'ordre d'apparition dans le menu. La partie entière correspond à la position de début de l'entrée dans Str 1 et la partie décimal correspond à la longueur (en nombre de caractères) de l'entrée.


Conseil

L'analyse de Str 1 prend quelques secondes. Si vous utilisez ce code dans vos projets, je vous recommande vivement de pré-configurer la variable E et List 1 en utilisant les valeurs générées.

Supprimez également le code entre les commentaires "PARAMETRAGE" et "PREPARATION". Vous n'en aurez plus besoin.


Fonctionnement

* [Haut] et [Bas] pour se déplacer dans le menu
* [EXE] pour valider
* [EXIT] pour quitter

En validant, le programme retourne le numéro de l'entrée (1, 2, 3 etc). En quittant, il renvoie -1.


Mises à jour

v2.00 (07/12/2015)
- Importante réécriture du programme
- Plus de souplesse d'utilisation et de paramétrage

v1.02 (20/07/2011)
- Déplacement du curseur mieux géré
- Le programme détecte automatiquement le nombre d'entrées (vous pouvez en mettre de 6 à 15), en fonction de la longueur de Str 1
- Séparation en deux programmes :
* MDRLTEST : Pour tester la fonction ou déboguer avant l'implantation dans un programme
* MENUDRLT : Le code à implanter pour utiliser la fonction dans un programme

v1.01 (20/07/2011)
- Correction d'un petit bogue


Commentaires :

Pages: Précédente | 1, 2, 3

Dark stormHors ligneLabélisateurPoints: 11634 Défis: 176 Message
Posté le 02-10-2016 à 22:56 | #
Toujours. :waza
Balfring
Statut : Invité
Posté le 18-10-2016 à 20:47 | #
Moi mon problème c'est qu'il y a plusieurs menu dans mon programme donc comment faire pour changer le nom du menu et des entrées ?
Merci
DrakHors ligneRédacteurPoints: 1925 Défis: 40 Message
Posté le 19-10-2016 à 20:14 | #
C'est assez simple, il te suffit de rentrer dans le code en édition sur ta calculatrice et de remplacer les "OPTN..." par ce que tu souhaites dans le code. N'aie pas peur, ça mord pas.
Si tu as besoin de dupliquer ce programme (même si c'est pas super), tu as les commandes [COPY] et [PASTE] disponibles sur la calculatrice.
Fifou86Hors ligneMembrePoints: 11 Défis: 0 Message
Posté le 23-10-2017 à 20:13 | #
Je relance un peu le sujet.. Perso, pour mes menu j'utilise des Do LpWhile 1 =/ 2, des Break et une variable pour savoir sur quelle partie du menu j'ai cliquer (seul default, j'ai pas encore chercher a faire un menu déroulant mais avec ce système tu peux cree n'importe quelle nombre de sous-menu )
LephenixnoirEn ligneAdministrateurPoints: 24197 Défis: 170 Message
Posté le 23-10-2017 à 20:19 | #
Pour culture, sache qu'un nombre peut servir tout seul de condition, auquel cas la condition de mue en « ce nombre ≠ 0 ». La boucle infinie la plus idiomatique est donc LpWhile 1
Palmfan
Statut : Invité
Posté le 26-06-2018 à 22:07 | # | Fichier joint
Bonjour Totoyo,

Débutant sur la Graph + 35, j'admire la facilité avec laquelle tu programmes, mais je suis un peu largué. J'ai d'abord essayé ton MENUDRLT, mais il plantait dès que je modifiais la liste des OPT01 etc que tu rentrais dans Str 1 au début... J'ai ensuite regardé sur YouTube ta vidéo sur les menus, et aussi celle sur les déplacements et j'ai eu l'impression d'avoir tout compris :-), sauf que mon menu déroulant fonctionne mais je ne vois pas comment en sortir une valeur qui me permettrait de lancer un sous-programme de traitement. Je suis en train d'essayer de faire des calculs simples sur la TVA.
Merci d'avance si tu peux m'éclairer sur le sujet.
Cordialement
Palmfan
TotoyoHors ligneMembre d'honneurPoints: 16093 Défis: 102 Message
Posté le 02-07-2018 à 21:31 | #
Si tu débutes, ce programme n'est pas le plus facile.
En relisant la description, je me rends compte qu'un novice se perdra.
J'ai l'impression qu'il manque une virgule au début de mon programme ",OPT01,..."->Str 1
Je n'ai pas mes calculatrices sous la main, donc ne peux t'aider qu'à tâtons.

Pages: Précédente | 1, 2, 3

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 51 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd