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.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » Nautilus, la saisie de texte dynamique au plus facile
Dragio Hors ligne Membre Points: 51 Défis: 3 Message

Nautilus, la saisie de texte dynamique au plus facile

Posté le 04/10/2014 17:15

Salut à tous,
Vous avez toujours rêvé d’intégrer une zone de saisie de texte dans vos programmes, mais vous n'avez jamais voulu vous prendre la tête avec une grosse salade de Str et de Getkey ? Je vous propose aujourd'hui une solution tout droit sortie du complexe secret des studios Red, j'ai nommé Nautilus

Ce sous programme vous mettra à disposition un rectangle d'édition, dont voici les caracteristiques:
Coordonnées de la zone d'édition entièrement paramétrables
N'accepte que les lettres de l'alphabet et les espaces
Ecriture en majuscule ou minuscule (Shift ou Alpha)
Curseur dynamique
Accepte un Str en entrée, si vous préférez modifier, plutôt que créer
Aucun bug majeur, à l'heure actuelle

Utilisation:
(Transférer le fichier en pièces jointe sur votre calculatrice)
Comme dit plus haut, il va falloir en premier le paramétrer, grâce à 7 lignes de code, contenues dans le fichier nautpr, qu'il vous faudra mettre dans votre projet avant de lancer la zone d'édition:

[b]20→Dim List 24[/b]             Ne pas toucher
[b]X→List 24[1][/b]               X abscisse du coin haut/gauche de la zone d'édition (compris entre 1 et 21)
[b]X→List 24[2][/b]               X ordonnée du coin haut/gauche de la zone d'édition (compris entre 1 et 7)
[b]X→List 24[3][/b]               X abscisse du coin bas/droite de la zone d'édition (compris entre 1 et 21)
[b]X→List 24[4] [/b]              X ordonnée du coin bas/droite de la zone d'édition (compris entre 1 et 7)
[b]X→List 24[18] [/b]            Si X=0 alors nautilus garde la valeur contenue dans Str16 au lancement, Si X=1 alors il la réinitialise
[b]X→List 24[19]  [/b]           Touche pour mettre fin à la zone d'édition, 31 conseillé (⇒touche EXE)


Une fois cela fait, Utiliser un simple prog"nautilus" pour lancer le sous programme et laisser la magie s'opérer.
Tout ce que l'utilisateur écrit sera ensuite automatiquement enregistré dans le str16 quand il quittera la zone d'édition.

Le programme utilise les variables suivantes:
Les Str de 14 à 16
La list 24
Il n'utilise virtuellement aucune variable basique (A~Z) grâce à un système de tampon.

Malgré mon engouement, j'ai tout à fait conscience que mon sous-programme est tout sauf une révolution. Mais j’espère qu'il pourra servir à des débutants ou plus expérimentés cherchant à créer des high-scores ou pseudo dans leur jeu sans se prendre la tête. Un simple outil, bien utilisé, peut devenir une arme très puissante (j'ai déjà des idées d'utilisation avancée, mais vous ne les découvrirez qu'à la sortie de mon jeu)

Fichier joint


Xavier59 Hors ligne Membre de CreativeCalc Points: 1337 Défis: 12 Message

Citer : Posté le 04/10/2014 17:23 | #


Salut,

Merci du partage !
Ton programme a l'air vraiment bien fait et il va s'avérer utile pour bon nombre d'entre nous !
1337
Lephenixnoir En ligne Administrateur Points: 24225 Défis: 170 Message

Citer : Posté le 04/10/2014 17:27 | #


Hey, ça a l'air sympa !
C'est vrai que les zones de texte sont quelque chose dont on manque bien... >< Ça devrait plus poser de problème maintenant.

Mais... il renvoie le texte dans une Str je suppose ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Dragio Hors ligne Membre Points: 51 Défis: 3 Message

Citer : Posté le 04/10/2014 17:30 | #


Oui, bien sur x) ... J'avais tellement de choses à raconter que j'en ai oublié l'essentielle: tout ce que l'utilisateur a écrit est automatiquement sauvegardé dans Str16 quand il quitte la zone d'édition.
Envie de saisie de texte dynamique ? Essayez Nautilus
Lephenixnoir En ligne Administrateur Points: 24225 Défis: 170 Message

Citer : Posté le 04/10/2014 17:38 | #


Mais dans ce cas, pourquoi ne pas simplement utiliser la commande "?" ? Je crois qu'elle permet d'écrire en minuscules, non ?
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 04/10/2014 17:45 | #


Oui mais elle n'est pas jolie et le résultat ne s'affiche pas dans la fenêtre graphique .
Dragio Hors ligne Membre Points: 51 Défis: 3 Message

Citer : Posté le 04/10/2014 17:47 | #


Nautilus a l'avantage de s’intégrer parfaitement dans les interfaces en mode texte (il ne touchera qu'à ce qu'il y a hors de sa zone d'action), alors que ? efface brutalement les 2 lignes de bas. Il est donc surtout conçu pour donner une meilleur esthétique aux saisies de texte, même si il a d'autres avantages majeurs comme pouvoir offrir une zone d'édition plus grande que son adversaire ou encore pouvoir éditer une Str.
Envie de saisie de texte dynamique ? Essayez Nautilus
Lephenixnoir En ligne Administrateur Points: 24225 Défis: 170 Message

Citer : Posté le 04/10/2014 17:58 | #


Ah ben oui, du coup. C'est vraiment pratique !
Je te conseille si ça t'intéresse, d'ajouter une fonctionnalité permettant de limiter les caractères autorisés (A-Z, a-z, 0-9, symboles, ...) pour que ce soit encore plus polyvalent (je pense à des utilisations spécifiques).
Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Silaxe Hors ligne Membre Points: 809 Défis: 12 Message

Citer : Posté le 04/10/2014 18:04 | #


Tu pourrais le mettre dans utilitaire ;).

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 61 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