Autore Topic: creare entry con autocompletamento  (Letto 2582 volte)

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
creare entry con autocompletamento
« il: 01 Settembre 2010, 23:51:27 »
girovagando su internet mi sono imbattuto in un "post" in un blog di un utente di cui non ricordo più il nome (mi pare iniziasse con C e finisse con espolo , ma non ne sono sicuro) molto interessante che spiegava come realizzare una entry con autocompletamento  in pyton, mi stavo chiedendo non è possibile fare la stessa cosa con gambas o esiste già un componente apposito di cui  sono all' oscuro? sarebbe molto carino averlo per gambas , soprattutto perchè lo utilizzerei in un sacco di applicazioni!

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: creare entry con autocompletamento
« Risposta #1 il: 01 Settembre 2010, 23:59:47 »
Cosa intendi per "entry": una textbox?
Non credo sarebbe difficile da realizzare, basta popolare un DB o cmq una matrice in cui caricare tutti i termini e poi parsare il contenuto della textbox man mano che l'utente scrive facendo apparire poi sotto alla textbox i suggerimenti in una listbox.
Visita il mio sito personale: http://www.leonardomiliani.com

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: creare entry con autocompletamento
« Risposta #2 il: 02 Settembre 2010, 00:41:07 »
girovagando su internet mi sono imbattuto in un "post" in un blog di un utente di cui non ricordo più il nome (mi pare iniziasse con C e finisse con espolo , ma non ne sono sicuro) molto interessante che spiegava come realizzare una entry con autocompletamento  in pyton, mi stavo chiedendo non è possibile fare la stessa cosa con gambas o esiste già un componente apposito di cui  sono all' oscuro? sarebbe molto carino averlo per gambas , soprattutto perchè lo utilizzerei in un sacco di applicazioni!

Hai appena ammesso che il mio blog è interessante.... 8)

Hai provato con una combobox? altrimenti devi disegnarti, come detta da Leo, una listview sotto la textarea...su per giù è quello che fanno le gtk con completition......

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #3 il: 02 Settembre 2010, 17:59:43 »
ma io volevo un componente unico non un mixaggio di due componenti :)

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: creare entry con autocompletamento
« Risposta #4 il: 03 Settembre 2010, 11:15:20 »
Sarai perdonato perché sei nuovo e non avrai letto tutti i messaggi del forum  :P
Scherzi a parte, i ComboBox, a cui avevo pensato subito, hanno dei problemi di gestione (come è venuto fuori più volte) per cui secondo me la cosa migliore è proprio l'unione dei 2 componenti.
Visita il mio sito personale: http://www.leonardomiliani.com

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #5 il: 03 Settembre 2010, 12:35:44 »
...non capisco il motivo di due componenti...  :o

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #6 il: 03 Settembre 2010, 12:57:04 »
si infatti...poi comunque io non ho mai avuto problemi con i combobox (se li conosci non ti uccidono  :P) a dire il vero non ho mai provato a vedere se si può tenere aperta la "lista" della combo popolandola in realtime,

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #7 il: 03 Settembre 2010, 13:15:22 »
per ora il meglio che si ho fatto nella pausa pranzo è l' autoaggiornamento della lista scrivendoci un testo, ci sarà il modo per mantenere aperta la lista durante la scrittura?
Codice: gambas [Seleziona]

PUBLIC SUB ComboBox1_KeyRelease()

  DIM sName AS String
    DIM sPercorso AS String
    DIM $hConn AS NEW Connection
    DIM sql AS String
    DIM hres AS Result
    DIM i AS Integer
    DIM lista AS NEW String[]
    DIM avviato AS Boolean
    DIM testo AS String
   
    WITH $hConn
      .Type = fstat.type
      .Host = fstat.sPercorso
      .Login = fstat.login   
      .Password = fstat.pass
      .Name = fstat.name
    END WITH
 
    $hConn.Open
      $hConn.Begin
   
       
            sql = "SELECT * FROM utenti WHERE nick like '%" & combobox1.Text & "%';"
            testo = combobox1.Text
            hres = $hConn.Exec(sql)
            FOR EACH hres
            lista.add(hres!nick)
            NEXT
            PRINT "pippo"
            $hconn.Close
            ComboBox1.List = lista
            IF lista.Count <> 0 THEN
           
            ComboBox1.Index = 0
            combobox1.Text = testo
   
            ENDIF
     
       $hconn.Close


END


Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #8 il: 03 Settembre 2010, 13:50:32 »
Cosa intendi per "aperta"? Intendi espansa? Questo credo sia impossibile, perchè qualsiasi evento gli fà perdere il mantenimento dell'espansione.
Non ricordo se esiste una proprietà o metodo per simulare la cosa...

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.273
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #9 il: 03 Settembre 2010, 17:16:39 »
Un mesetto fa in questa discussione http://www.gambas-it.org/smf/index.php?topic=1237.15#lastPost avevo postato un esempio che forse fa al caso tuo...
Lo allego comunque qui ;)
 

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.273
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #10 il: 03 Settembre 2010, 17:18:21 »
Volendo ci si puo' fare anche un piccolo componente  ;D

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #11 il: 03 Settembre 2010, 18:42:19 »
Citazione
Volendo ci si puo' fare anche un piccolo componente  Ghigno
visto che l' esperto di componenti sei tu , potresti farci un pensierino :)
secondo me è un componente che potrebbe essere molto utilizzato nei gestionali

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #12 il: 03 Settembre 2010, 18:44:37 »
l' esempio è molto bello ma purtroppo non volevo utilizzare un list box aggiunto ad un textbox :)

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.273
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #13 il: 03 Settembre 2010, 19:35:39 »
Bhe ma creando il componente non vedrai differenza tra usare una combobox e il mio esempio...
Stasera vedo quello che posso fare...
Ci aggiorniamo :)

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.482
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #14 il: 03 Settembre 2010, 19:45:04 »
splendido!