Autore Topic: storico combo box  (Letto 1698 volte)

Offline neo571

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
    • http://fddf
storico combo box
« il: 17 Maggio 2008, 13:31:56 »
Sto usando una compobox editabile dall'utente, per inserire testo, come in una textbox, vorrei inserire nella combo lo storico comandi di immissione dell'utente ....

in pratica ho inseerito la combo al posto della textbox propio per permettere all'utente aprendo la combo di ritrovare i comandi precedentemente digitati ...

come posso salvare la cronologia e farli visualizzare nella combo?

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: storico combo box
« Risposta #1 il: 17 Maggio 2008, 14:02:48 »
i vari comandi li puoi aggiungere con

combobox1.add(testo da aggingere)

per salvarli in un file:

 File.save(percorsodelfile, ComboBox1.List)

Offline neo571

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
    • http://fddf
Re: storico combo box
« Risposta #2 il: 17 Maggio 2008, 17:48:37 »
ok, cosi funziona, però devo impostare io i comandi per l'utente, io invece vorrei che la combo box tenesse la cronologia dei comandi digitati dall'utente, cosichè se durante una sessione di lavoro dovesse ridigitare lo stesso comando lo possa trovare nella combo ...

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: storico combo box
« Risposta #3 il: 17 Maggio 2008, 18:21:49 »
ma l' utente dove li digita i comandi?
se vengono digitati all' interno del tuo programma il comando .add() è l' ideale

Offline neo571

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
    • http://fddf
Re: storico combo box
« Risposta #4 il: 17 Maggio 2008, 18:45:01 »
L'utente digita i comandi nel mio programma, nella combobox stessa,

combobox1.add(testo da aggingere)

invece di "testo da aggingere" dovrei far memorizzare in automatico i comandi che lui stesso ha digitato in precedenza, e che quindi io non posso prevedere ....

è possibile farlo?

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: storico combo box
« Risposta #5 il: 17 Maggio 2008, 19:19:31 »
capito!

penso sia possibile.


se dopo aver inserito il comando nel combo per eseguirlo si deve premere un tasto

nell' evento di tale pressione puoi inserire:

ComboBox1.add(ComboBox1.text)

se non vuoi che venga scritto più di una volta lo stesso comando ovrai scrivere qualcosa del genere

Codice: [Seleziona]

DIM comando_nuovo AS String
DIM indice AS Integer
DIM i AS Integer

 comando_nuovo = ComboBox1.Text
FOR i = 0 TO ComboBox1.Count - 1
 
  IF ComboBox1.List[i] = comando_nuovo THEN indice = 1

NEXT

IF indice = 0 THEN ComboBox1.Add(comando_nuovo)

   

Offline neo571

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
    • http://fddf
Re: storico combo box
« Risposta #6 il: 18 Maggio 2008, 10:44:44 »
Ok, cosi funziona, Grazie mille.

un'altra domanda come faccio a fare prendere il comando anche quando batte invio sulla combobox ...

Ho provato con l'evento :

ComboBox1_Enter()

ma non funziona bene, fa partire in continuazione comandi ...

Hai un evento da suggerirmi?

Grazie ancora ..

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: storico combo box
« Risposta #7 il: 18 Maggio 2008, 10:58:39 »
così in teoria dovrebbe funzionare:

Codice: [Seleziona]


PUBLIC SUB ComboBox1_KeyPress()

DIM comando_nuovo AS String
DIM indice AS Integer
DIM i AS Integer

  IF Key.Code = Key.Enter THEN
              comando_nuovo = ComboBox1.Text
        FOR i = 0 TO ComboBox1.Count - 1
         
          IF ComboBox1.List[i] = comando_nuovo THEN indice = 1
       
        NEXT
       
        IF indice = 0 THEN ComboBox1.Add(comando_nuovo)
   ENDIF

END

 


ho provato ma ha me funziona solo con il tasto enter del tastierino numerico
prova tu

Offline neo571

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
    • http://fddf
Re: storico combo box
« Risposta #8 il: 18 Maggio 2008, 12:16:50 »
Grazie mille, si in effetti funziona solo con l' ENTER del tastierino numerico ma va benisso ugualmente !!!

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: storico combo box
« Risposta #9 il: 18 Maggio 2008, 13:42:56 »
di nulla! figurati

in effetti non capisco perchè funzioni solo con il tast numerico!

  • Visitatore
Re: storico combo box
« Risposta #10 il: 18 Maggio 2008, 17:30:20 »
Forse per una volta tanto mi rendo utile anche io =)

Prova con EVENTO_Activate