#1 Tue 02 January 2007 15:08
- icadedt
- Participant assidu
- Lieu: ici et là
- Date d'inscription: 21 Jul 2006
- Messages: 478
type de la variable mapbasic
Bjr
est il possible de connaitre la nature d'une variable (string,integer...) en mapbasic
merci d'avance
Hors ligne
#2 Wed 03 January 2007 09:20
Re: type de la variable mapbasic
La documentation de MapBasic dit :
SmallInt
Whole numbers from -32768 to 32767 (inclusive); stored in 2 bytes.
Integer
Whole numbers from -2,147,483,647 to +2,147,483,647 (inclusive); stored in 4 bytes.
Float
Floating point value; stored in eight-byte IEEE format.
String
Variable-length character string, up to 32768 bytes long.
String * length
Fixed-length character string (where length dictates the length of the string, in bytes, up to 32768 bytes); fixed-length strings are padded with trailing blanks.
Logical
TRUE or FALSE, stored in 1 byte: zero=FALSE, non-zero=TRUE.
Date
Date, stored in four bytes: two bytes for the year, one byte for the month, one byte for the day.
Object
Graphical object (Point, Region, Line, Polyline, Arc, Rectangle, Rounded Rectangle, Ellipse, Text, or Frame).
Alias
Column name.
Pen
Pen (line) style setting.
Brush
Brush (fill) style setting.
Font
Font (text) style setting.
Symbol
Symbol (point-marker) style setting.
Christophe Damour (SIGéal)
Hors ligne
#3 Wed 03 January 2007 09:32
- icadedt
- Participant assidu
- Lieu: ici et là
- Date d'inscription: 21 Jul 2006
- Messages: 478
Re: type de la variable mapbasic
je me suis mal exprimé :
supposons que je rentre quelque chose dans un edittext et je souhaite savoir si ce qui y est
rentré est de type numérique ou texte
cdlt
Hors ligne
#4 Wed 03 January 2007 10:35
Re: type de la variable mapbasic
Je ne sais pas si ca existe mais au pire je suppose que tu peux te créer une petite fonction qui le fera pour toi, avec une boucle Do Case, qui énumère chaque possibilité et peut retourner le type de variable en sortie ?
Do Case...End Case statement
Purpose
Decides which group of statements to execute, based on the current value of an expression.
Restrictions
You cannot issue a Do Case statement through the MapBasic window.
Syntax :Code:
Do Case do_expr Case case_expr [ , case_expr ] statement_list [ Case ... ] [ Case Else statement_list ] End Casedo_expr is an expression
case_expr is an expression representing a possible value for do_expr
statement_list is a group of statements to carry out under the appropriate circumstances
EDIT : pour aller plus loin qu'un simple edittext et comme le contenu des variables peut être aussi un objet graphique, un petit supplément en ce qui concerne les objets (trouvé ici):
int(Objectinfo(obj,1))=code du type d'objet
les codes :
1 Arc
2 Ellipse
3 Line
4 Polyline
5 Point
7 Region
8 Rectangle
9 Rounded Rectangle
10 Text
Hors ligne
#5 Wed 03 January 2007 12:00
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: type de la variable mapbasic
Bonjour,
Résolution 2007: faire simple...
Demander à l'utilisateur de rentrer ou du texte pur ou du numérique pur (avec décimales marquées par un point)!!
S'il faut tester, on peut utiliser Val(ma_variable) qui retournera zéro si il n'y a que du texte (mais ne commençant pas par des chiffres: Val("52, rue de Rivoli") va renvoyer 52!!)
Hors ligne