Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [vb6] ordinare combo senza proprietà sorted

    Ragazzi poichè ho una combobox con dei nomi e gli indici della combo sono in relazione con gli indici dell'array dove sono memorizzati le età del corrispondente nome messo nella combo
    esempio

    combo
    Matteo
    Luca
    Giovanni
    Agostino

    array
    20
    26
    19
    42
    quindi
    matteo = 20,luca = 26, giovanni =19, agostino = 42

    come posso fare per ordinare la combo conservando le età giuste che sono nell'array?

    Scusate se non mi sono spiegato bene!!!
    Agos

  2. #2
    Utente di HTML.it L'avatar di Boolean
    Registrato dal
    Oct 2005
    Messaggi
    758
    puoi usare la proprietà ItemData, che ti permette di specificare un indice di correlazione con l'array, dopo di che puoi usare tranquillamente la proprietà Sorted, per ordinare la lista della tua combo.

    la proprietà ItemData va impostata nel momento in cui popoli la combo, quindi:

    codice:
    For K=0 to 10
       Combo1.AddItem Nome(K)
       Combo1.ItemData(Combo1.ListCount - 1) = Eta(K)
    Next K
    quando selezionerai il valore nella combo l'età sarà:

    codice:
    EtaScelta=Eta(Combo1.ItemData(Combo1.ListIndex))
    TheTruster

  3. #3
    Grande!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


    grazie mille!!!
    Agos

  4. #4
    scusami l'ignoranza ho capito qualcosa ma non tutto

    l'aggiunta avviene una alla volta con un bottone
    txt_classe e txt_eta sono le stringhe che devo aggiungere, l'età deve essere una stringa e non un numero
    quando faccio l'aggiunta nella combo scrivo questo codice :

    l'array si chiama array_eta
    la combo si chiama cbo_alunni

    array_eta(cbo_alunni.ListCount) = Txt_eta.Text
    cbo_alunni.AddItem (txt_nome.Text)
    cbo_alunni.ItemData(cbo_alunni.ListCount - 1) = array_eta(cbo_alunni.ListCount - 1)


    poi quando clicco sulla combo a scegliere un alunno nella textbox txt_eta2 deve uscire la corrispondente eta
    Agos

  5. #5
    Qual'è la domanda?!
    Innnanzitutto: il codice che ti ha postato Boolean funziona? Cosa è che non riesci a fare?

    ciao

  6. #6
    il fatto è che credo di inserire in itemdata il numero che corrisponde all'indice dell'array ma non so verificarlo cioè non so come riempire la textbox txt_eta.text quando scelgo un nome dalla combo.
    Agos

  7. #7
    quando selezionerai il valore nella combo l'età sarà:

    codice:
    EtaScelta=Eta(Combo1.ItemData(Combo1.ListIndex))
    TheTruster [/QUOTE]

    Riprendendo il codice postato da Boolean (che tra l'altro si è firmato The Truster....)fai così:
    codice:
    Msgbox Etascelta
    ciao

  8. #8
    Utente di HTML.it L'avatar di Boolean
    Registrato dal
    Oct 2005
    Messaggi
    758
    beh... considerato che

    TheTruster = Boolean And Boolean = TheTruster And (Boolean Or TheTruster) = Mirko Marchese
    non credo faccia molta differenza la firma

    per rispondere ad Agostino...

    se l'età è una stringa, non fa differenza, perchè nella proprietà ItemData, puoi mettere ache solo l'indice dell'elemento dall'array che identifica l'età relativa ad ogni elemento della ComboBox.

    Boolean

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.