PhilAin:
Bonsoir,
Sans modif de la librairie, essaie ceci :
Récupérer la partie entiere
Récupérer la partie décimale
multiplier la partie decimale par 10, 100, 1000 (en fonction du nombre de décimale souhaité)
pour la transformer en entier
ensuite afficher partie entiere + point + partie entière décimale( si j'ose dire)
Houla, c'est quoi ces théories ?
Il faut que tu revois les types de variables et les opérateurs, tu verra que . n'est pas un opérateur et qu'on peut pas mettre de nombre à virgule dans un int !
pro_info:
merci pour ta réponse
Donc, comment puis-je modifier cette lib ?en recherchant dans la lib "GFX" je trouve ceci ce rapportant à "setTextSize" :
Adafruit_GFX.cpp :void Adafruit_GFX::setTextSize(uint8_t s) {
textsize = (s > 0) ? s : 1;
}
Adafruit_GFX.h :void
...
setTextSize(uint8_t s),
...J'ai des connaissances autodidactes en langage web dont PHP(qui m'aide un peu dans compréhension du C++),... ce qui me permet de comprendre un peu le code arduino, mais une aide m'est quand même nécessaire :), ça ne doit pas être si compliqué d'autoriser les chiffres décimaux en plus des chiffres entiers... Avez-vous une solution plus concrète ? Ou une personne ayant déjà eu ce problème ? merci
La partie que tu montres n'est que la vérification que la variable s donnée est valide, si tu veux modifier la librairie pour pouvoir donner un nombre à virgule il faut que tu changes le type de la variable textsize, tu devrais trouver une déclaration du genre de
uint8_t textsize = 1;
Et il faudra que tu modifies tout les calculs effectués par la lib avec textsize en t'assurant que le nombre à virgule soit bien pris en compte
Je rappelle que 25.36 * 1 = 25 et 25.36 * 1.0 = 25.36 (à cause des conversions implicites)