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
¤ Vous cherchez une fonction ?
Utilitaires >> Graph 90+E >> Divers >> Locate.py 2
Locate.py 2
Version : 2.3 Taille : 4077 octets Ajouté le : 2019-05-09 19:00 Modifié le : 2019-07-16 18:44
Auteur et posteur :
KikoodxHors ligneAncien labélisateurPoints: 3039 Défis: 11 Message
Aucune image disponible
Nombre de visites sur cette page : 4019
Score au progrank : 18
Pas encore de note !
Vous devez être connecté(e) pour noter (inscription).
429 téléchargements | Soumettre un test

Une licence est incluse avec ce programme.


Description en français :

Voir le dépôt du projet pour plus d'informations et de versions.
https://gitea.planet-casio.com/KikooDX/Locate2.py/releases

2.1
2.1
- Gestion des erreurs.
- Meilleure présentation des docstrings.

2.1.1
Cliquez pour recouvrir
Création d'un nouveau "fork", locate_dev.py destinée à moi, mieux documenté et commenté mais beaucoup plus lourd.
En conséquence poids du fichier locate.py divisé par deux.

2.2
Cliquez pour recouvrir
Ajout des méthodes de Screen : export, load et locate_v.
export retourne une chaîne de caractères générée à partir de l'objet Screen, load charge une telle chaîne de caractères.
locate_v est un locate à la verticale
La classe Screen a un nouveau paramètre, copy, si l'on passe a copy un autre objet Screen le nouvel objet sera une copie de ce dernier.

Les mises à jour à partir de la 2.3 sont détaillées sur le dépôt du projet :
https://gitea.planet-casio.com/KikooDX/Locate2.py

Une mise à jour bien méritée de mon premier Locate.py.
Le module est maintenant propre, lisible et documenté.
Il est orienté objet, pour l'importer faites from locate2 import * puis créez votre objet de cette façon :
test_screen = Screen()


Plus d'information sur le wiki du projet.


Commentaires :

Pages: 1, 2, 3 | Suivante

Shadow15510Hors ligneAdministrateurPoints: 5503 Défis: 18 Message
Posté le 09-05-2019 à 19:04 | #
Excuse-moi, mais si c'est une mise à jour, pourquoi faire un programme supplémentaire, c'est plus simple pour tous le monde de n'en faire qu'un, non ?
KikoodxHors ligneAncien labélisateurPoints: 3039 Défis: 11 Message
Posté le 09-05-2019 à 19:07 | #
Non le fonctionnement et l'utilisation à changé, cette nouvelle version a été entièrement recodée et fonctionne avec une classe.
Shadow15510Hors ligneAdministrateurPoints: 5503 Défis: 18 Message
Posté le 09-05-2019 à 19:07 | #
Dans ce cas pas de problème.
LephenixnoirHors ligneAdministrateurPoints: 24574 Défis: 170 Message
Posté le 09-05-2019 à 22:12 | #
Quelque chose me dit que tu aurais pu/dû mettre à jour le programme original ?
KikoodxHors ligneAncien labélisateurPoints: 3039 Défis: 11 Message
Posté le 10-05-2019 à 07:32 | #
Si vous insistez, vous pouvez supprimer celui-ci je vais update le premier programme plus tard.
MactulHors ligneMembrePoints: 699 Défis: 0 Message
Posté le 10-05-2019 à 18:45 | #
C'est cool j'utilisait déjà ta lib mais elle n'était pas plus performante qu'un locate Basic-Casio
Est-elle plus rapide ?
KikoodxHors ligneAncien labélisateurPoints: 3039 Défis: 11 Message
Posté le 10-05-2019 à 18:56 | #
Merci Mactul, pour tout te dire je n'en ai aucune idée
La vitesse devrait être équivalente en général, mais l'avantage principal est que tu peux créer autant d'objets Screen que tu le souhaites et que de nouvelles fonctions ont été ajoutées
from locate2 import *

menu = Screen()
jeu = Screen()
menu.locate(1, 1, "MENU")
jeu.fill(".")
jeu.locate(2, 2, "JEU")
while True:
    menu.refresh(ask_for_input=True)
    jeu.refresh(ask_for_input=True)
Shadow15510Hors ligneAdministrateurPoints: 5503 Défis: 18 Message
Posté le 15-05-2019 à 18:27 | #
Je ne suis pas très doué en Python Tu peux m'expliquer en détail comment on s'en sert de ta lib ? J'ai bien envie de me faire un mini-RpG pour tester ça !
KikoodxHors ligneAncien labélisateurPoints: 3039 Défis: 11 Message
Posté le 15-05-2019 à 18:39 | #
Yes pas de problème
Je suppose que tu sais utiliser le Locate du Basic Casio dans mes explications (c'est le cas mais je précise).
// NB: Le code tel quel n'est pas fonctionnel en raison du format des commentaires sur PC

from locate2 import * // On importe locate2

ecran1 = Screen() // On crée un objet écran de la classe Screen
// Un objet écran représente un écran de calculatrice, de base ses dimensions sont de 21x6, et est rempli d'espaces

ecran2 = Screen(height=6, width=21, patern="." // Nouvel écran, indépendant de ecran1, ses dimensions sont spécifiées (inutile ici) et le remplissage de l'écran est défini à ".", il sera prérempli entièrement de "."

ecran1.locate(1, 1, "BONJOUR") // Ecrit "BONJOUR" en haut à gauche de ecran1

ecran1.refresh() // On affiche ecran1

entree_utilisateur = ecran2.refresh(True) // En passant True en paramètre à la méthode de fonction refresh(), l'écran va ouvrir une entrée utilisateur et la renvoyer

// Quelques autres fonctions
ecran1.fill(".") // Rempli ecran1 de points, si sans paramètres agit comme un ClearScreen en Basic Casio

ecran1.get_cell_content(1, 1) // Renvoie le contenu de la première case de l'écran en partant de haut à gauche (1, 1), ici le "B" de "BONJOUR"
DisperseurHors ligneMembrePoints: 1830 Défis: 1 Message
Posté le 15-05-2019 à 18:44 | #
Comment tu as réussit à faire ça ..?!

Pages: 1, 2, 3 | Suivante

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