Combobox di un array multidimensionale

Moderator: Enrico Maria Giordano

Post Reply
User avatar
Marco Turco
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London
Contact:

Combobox di un array multidimensionale

Post by Marco Turco »

Salve a tutti,
è possibile utilizzare per un combobox un elemento di un array Multidimensionale ?

In pratica ho un array tipo:

aArray:={}
aadd(aArray,{1,"Marco"})
aadd(aArray,{2,"Enrico"})
aadd(aArray,{3,"Paolo"})

dove ho un primo elemento numerico e un secondo elemento alfanumerico

Io vorrei visualizzare una combobox che utilizza solo il secondo elemento.
Questo mi serve perché il primo elemento è in numero di record, quindi il cliente seleziona il nome e io posso prendere quindi il corrispondente numero di record dal primo elemento. Nell'esempio l'array è in ordine sequenziale ma nella realtà i nomi sono riordinati quindi il numero di record non è in sequenza.

Qualche idea ?

Grazie in anticipo
Best Regards,

Marco Turco
SOFTWARE XP LLP
User avatar
Enrico Maria Giordano
Posts: 7355
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: Combobox di un array multidimensionale

Post by Enrico Maria Giordano »

Penso che tu debba creare degli array temporanei unidimensionali appositamente per il combo.

EMG
User avatar
Marco Turco
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London
Contact:

Re: Combobox di un array multidimensionale

Post by Marco Turco »

E' più o meno quello che sto facendo adesso, in pratica mi sono creato una nuova classe "combolist" che crea un nuovo array monodimensionale at runtime.
Volevo giusto sapere se c'è una soluzione utilizzando la classe standard.
Best Regards,

Marco Turco
SOFTWARE XP LLP
User avatar
MarcoBoschi
Posts: 925
Joined: Thu Nov 17, 2005 11:08 am
Location: Padova - Italy
Contact:

Re: Combobox di un array multidimensionale

Post by MarcoBoschi »

// Passi alla combo un array a una sola dimensione
@ 1, 1 COMBOBOX oCombo VAR cVariab ITEMS aMyFunc( aArray, 2 )

// il numero di record lo ricavi così: aArray[ oCombo:nAt , 1 ]
@ 3 , 2 BUTTON oButton ACTION MsgInfo( "Numero di record " + STR( aArray[oCombo:nAt,1],2 ) )

STATIC FUNCTION aMyFunc( aArray, nElem )

LOCAL i, aCombo := {}

FOR i := 1 TO LEN(aArray)
AADD( aCombo, aArray[ i , nElem ] )
NEXT i

RETURN aCombo
Marco Boschi
info@marcoboschi.it
User avatar
MarcoBoschi
Posts: 925
Joined: Thu Nov 17, 2005 11:08 am
Location: Padova - Italy
Contact:

Re: Combobox di un array multidimensionale

Post by MarcoBoschi »

abbiamo postato praticamente tutti insieme è banale come soluzione non avevo letto Enrico e il tuo secondo post
Ciao
Marco Boschi
info@marcoboschi.it
User avatar
MarcoBoschi
Posts: 925
Joined: Thu Nov 17, 2005 11:08 am
Location: Padova - Italy
Contact:

Re: Combobox di un array multidimensionale

Post by MarcoBoschi »

che fiacca oggi :?
Marco Boschi
info@marcoboschi.it
User avatar
Marco Turco
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London
Contact:

Re: Combobox di un array multidimensionale

Post by Marco Turco »

Grazie.
Best Regards,

Marco Turco
SOFTWARE XP LLP
Post Reply