Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !

10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …

Faire un don 

Retrouver nos membres bienfaiteurs

#1 Tue 20 July 2004 19:05

Maud Gaide
Invité

MapBasic valeur d'un menu deroulant

Bonjour,
j'ai cree des boites de dialogues avec des listes deroulantes, le choix fait par les utilisateurs est enregistre dans une table: le probleme est que c'est la valeur du choix qui est enregistre et non son nom.
par exemple le 2ieme choix de la liste est Amenagement, il m'enregistre 2 alors que je voudrais qu'il enregistre Amenagement dans ma table!
Comment dois je faire?
Merci d'avance

 

#2 Tue 20 July 2004 19:53

Jacques Paris
Invité

Re: MapBasic valeur d'un menu deroulant

Il n'y a qu'une facon de recuperer les noms de choix multiples, c'est de conserver une liste indexee de ces noms et de faire la traduction indice>nom une fois le choix fait.

Mais il y a deux facons de proceder. L'une consiste a passer les noms dans une variable = chaine de caracteres, disons s_noms
s_noms=nom1+";"+nom2+....
de l'utiliser dans la definition du dialogue
control multilistbox .... title s_noms ...
et de se servir de l'indice pour decouper s_noms de facon a retrouver le nom

L'autre consister a utiliser une variable vecteur de la dimension du nombre de noms
Dim v_noms(nombre-de-noms) as string
v_noms(1)=nom1
v_noms(2)=nom2
...
et de l'utiliser avec
control multiboxlist ... title from variable v_noms
Il suffit alors de recuperer le nom choisi par v_noms(indice-choisi)

Je pense que la deuxieme approche est de loin le plus econome. Si vous tenez a la premiere, regardez les fonctions ArrayToString() et StringToArray() qui pourraient vous etre utile dans www.paris-pc-gis/mb_r/fs/fs_start.htm

Jacques Paris

 

#3 Wed 21 July 2004 12:02

Maud Gaide
Invité

Re: MapBasic valeur d'un menu deroulant

Merci pour votre reponse, j'essaie la seconde solution mais j'ai un petit probleme
j'arrive a creer la variable et faire afficher les valeur dans mon popupmenu mais ensuite je n'arrive pas a recuperer la valeur choisi si j'ecrit
Update BDphoto Set Service = ReadControlValues(34) Where Rowid = tableinfo(BDphoto,TAB_INFO_NROWS)
la valeur est enregistre dans la table et non le nom et si j'ecrit Update BDphoto Set Service = n_service() Where Rowid = tableinfo(BDphoto,TAB_INFO_NROWS) comment recuperer l'indice choisi comme vous me l'avez dit?
Merci pour votre aide

 

Pied de page des forums

Powered by FluxBB