Ce sujet est résolu.
1 | |||
Auteur | Messages | ||
---|---|---|---|
décapode | #1 Posté le 17/11/2013 à 08:51:24 | ||
Bonjour Apparemment IsString n'existe plus par quoi à t-elle été remplacée ? Merci des réponses | |||
décapode | #2 Posté le 17/11/2013 à 10:52:43 | ||
Bon après recherche, si cela intéresse quelqu'un ( je ne veux pas passer pour un prof ni avoir inventer l'eau chaude) Tous les isBoolean, isString, isInteger...peuvent être remplacés par : [...] is Truc[]. Je ne dois pas être très clair donc un petit code : Public Sub Main() Dim bol As Boolean Dim Monchifr As New Integer[1] Monchifr[0] = "12" Print Monchifr[0] If [Monchifr[0]] Is String[] Then Print " Monchifr[0] est une chaine" If [Monchifr[0]] Is Integer[] Then Print " Monchifr[0] est un integer" Print bol If [bol] Is Integer[] Then Print "bol est un integer" If [bol] Is Boolean[] Then Print "bol est un boolean" End ***************************** Retourne : 12 Monchifr[0] est un integer False bol est un boolean *************************** Noter que Monchifr[] prend les strings et les converties en integer, sans erreur si le contenu est au format integer Si on met Monchifr[0] = "12.12" ou Monchifr[0] = "12,12" ça plante Voilà si ça peut aider, ou me dire ou complèter si j'ai dit des c....ies | |||
Reivillo | #3 Posté le 18/11/2013 à 11:50:47 | ||
C' est ici, et nul part ailleurs. « Et pis c'est tout ! » | Bonjour décapode. Effectivement <isTypeDeDonnée>, ne fonctionne pas sous GB3. Alors que sous GB2, c'est OK:
Reivillo. Version LinuxMint 13 (1.6.1-1+maya-mate(32-bit)) LTS Noyau 3.14.33-031433-generic (27-02-2015) LinuxMint 13 Mate Fr ICI, LinuxMint 17 Mate Fr LÀ. Programmation Gambas3 Installé depuis la Console Terminal avec successivement: Les 3 Lignes sudo en Gras ci-dessous... sudo add-apt-repository ppa:gambas-team/gambas3 sudo apt-get update sudo apt-get install gambas3 -y Gambas3.8.4-57.47 (Mise à Jour Auto via mintupdate le 28-01-2016) Pour la Doc, c'est vers là: Documentation Gambas3 FR | ||
décapode | #4 Posté le 18/11/2013 à 12:03:38 | ||
Salut Reivillo Bon si tu n'y trouves rien à redire je le passe en résolu. As tu vu mon post dans l'IDE | |||
gambix | #5 Posté le 22/11/2013 à 13:14:06 | ||
Faire simple ! | Stop... la il y a erreur Car : Dim sVar as string = 1 Print IsInteger(sVar) -> true IsInteger retourne si la valeur peut être interprétée comme un integer ... pas si le type de variable est un integer Il faut utiliser TypeOf If TypeOf(sVar) = gb.Integer then Print "C'est un Entier" http://gambasdoc.org/help/lang/typeof?v3 Ensuite. "IS" Indique si on est de cette classe ou si on Herite ce celleci Par exemple: If hMyForm IS Form then dira true si hMyForm est un Formulaire Mais hMyForm Is Container est true aussi Et hMyForm Is Control aussi. Car un formulaire est un container qui est un controle Quand tu dis [MonChiffre[0]] IS Integer[] ... OU c'est vrai c'est bien un tableau Integer... mais pas un entier Car Si Monchiffre[0] est = 3 ça revien a dire if [3] Is Integer[] ... sachant que [] construit un tableau en fonction du contenu [1,2,3] créé un integer[] [1.0,2.0] créé un Float[] [true,False] créé un Boolean[] Un Tableau en gambas n'est pas un type de variable mais un type de classe. Donc pour conclure ton exemple ... est pourrit lol... Mais on y est tous passé.
Moins de texte dans une signature c'est agrandir son espace. | ||
gambix | #6 Posté le 22/11/2013 à 13:16:10 | ||
Faire simple ! | V2 IsInteger Result = IsInteger ( Expression ) AS Integer Returns TRUE if the datatype of Expression is Integer. V3 IsInteger Result = IsInteger ( String ) AS Integer Return if a string can be safely interpreted as an Integer. Moins de texte dans une signature c'est agrandir son espace. | ||
1 |