#1 Wed 26 May 2010 16:43
- jean94
- Participant assidu
- Date d'inscription: 13 Aug 2009
- Messages: 436
[Map Basic 10] List Box (champs dupliqué)
Bonjour à tous,
J'ai un mbx avec un list box. Le list box se met a jour (se rempli) selon le nom des champs d'une table choisi.
Mon problème est que quand je ferme mon dialogue (bouton annulé) et que je le réouvre et rechoisi une table, le list box se rempli a nouveau mais contenant 2 fois les noms des champs. Pourtant dans ma procédure j'ai un «Alter Control 7 Title ""» se qui a mon avis devait "vider" mon list box.
Hors ligne
#2 Wed 26 May 2010 19:16
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: [Map Basic 10] List Box (champs dupliqué)
Bonjour
Bien vu le Alter Control 7 Title ""...mais avez vous aussi un Redim variable_liste(0) pour "vidanger" la liste précédemment établie ??
Hors ligne
#3 Wed 26 May 2010 19:26
- jean94
- Participant assidu
- Date d'inscription: 13 Aug 2009
- Messages: 436
Re: [Map Basic 10] List Box (champs dupliqué)
bonjour
J'ai pu règler le problème. Voici le code
Code:
sub listbox_valeurs dim a_list as string Dim i_numcols As SmallInt dim i as smallint i_numcols = TableInfo(adresse, TAB_INFO_NCOLS) if i_numcols=0 then exit sub end if for i=1 to i_numcols a_list=a_list+ColumnInfo(adresse,"col"+i,COL_INFO_NAME)+";" next a_list=left$(a_list, len(a_list)-1) Alter Control 7 Title a_list a_list = ""
Et voici ce que j'en ai conclu... c'est que le "Controle 7 Title" ne peut être altéré comme un simple controle value e.g. edit text. Même en essayant de passer mon «""» en variable. Pour résoudre mon problème j'ai ajouter a la fin de la procédure a_list = "" ce qui fait que ma variable est vidangée après que la valeur ait été attribué à la liste box et donc lorsque la sub est invoqué ma variable ne contient plus la champs non voulu.
@ Maurice
Je croyais que Redim variable_liste(0) s'appliquait seulement au variable "Array" ?....si non, as-tu un code concrès ou il est utilisé comme exemple?
Dernière modification par jean94 (Wed 26 May 2010 19:27)
Hors ligne
#4 Wed 26 May 2010 19:35
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: [Map Basic 10] List Box (champs dupliqué)
Je croyais que Redim variable_liste(0) s'appliquait seulement au variable "Array" ?...
C'est le cas...et je croyais que tu utilisais une variable "array" comme je le fais personnellement toujours quand je dois utiliser une liste
Hors ligne
#5 Wed 26 May 2010 19:42
- jean94
- Participant assidu
- Date d'inscription: 13 Aug 2009
- Messages: 436
Re: [Map Basic 10] List Box (champs dupliqué)
Ok pour les bien des utilisateur, et moi-même, pourrais-tu coller un exemple de list box en array pour comparer ici?
JF
Hors ligne
#6 Wed 26 May 2010 22:06
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: [Map Basic 10] List Box (champs dupliqué)
Sur le même exemple
Code:
sub listbox_valeurs dim a_list() as string Dim i_numcols As SmallInt dim i as smallint i_numcols = TableInfo(adresse, TAB_INFO_NCOLS) if i_numcols=0 then exit sub else redim a_list(i_numcols) end if for i=1 to i_numcols a_list(i)=ColumnInfo(adresse,"col"+i,COL_INFO_NAME) next Alter Control 7 Title From Variable a_list Redim a_list(0)
Hors ligne