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

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: creare entry con autocompletamento
« Risposta #15 il: 04 Settembre 2010, 00:43:00 »
splendido!



non puoi prenderti le gtk e con extern importarti tutto quello che ti serve?

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.272
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #16 il: 04 Settembre 2010, 02:28:49 »
non puoi prenderti le gtk e con extern importarti tutto quello che ti serve?

Ma poi io che ci sto a fare qui !?  ;D

Ecco una prima bozza...

Mi sembra di aver completato la gestione dei vari spostamenti tra textbox e listbox. Va testata.
Ho inserito queste proprieta' al componente (oltre a quelle ereditate dall'UserControl):

Property Text As String
Restituisce il testo inserito nella TextBox

Property Read Key As String
Restituisce la chiave dell'Item scelto nella ListBox

Property List As Collection
Questa e' la Collection delle parole da ricercare con la TextBox. Per esempio se volessi fare una ricerca tra i clienti avro' una query impostata in questo modo:

Codice: gambas [Seleziona]
Rec = Db.Exec("SELECT Ragionesociale, CodiceCliente FROM Clienti ORDER BY Ragionesociale;")


dopodiché:

Codice: gambas [Seleziona]
FOR EACH Rec
  SearchBox.List[Rec["CodiceCliente"]] = Rec["RagioneSociale"]
NEXT


e voila'.

Property ListWidth As String
Serve a impostare la larghezza della ListBox. Di default prendo la larghezza della TextBox.

Property ListHeight As String
Serve a impostare l'altezza della ListBox.

Bisogna ancora inserire gli Eventi.
Se avete critiche o suggerimenti, sparate pure.   :ok:
« Ultima modifica: 04 Settembre 2010, 12:40:28 da milio »

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.272
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #17 il: 04 Settembre 2010, 09:35:11 »
 :-[ mi sa che mi sono dimenticato di allegare i sorgenti  :mad:

L'ora era tarda  :sleepy:


Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.272
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #18 il: 04 Settembre 2010, 13:35:59 »
aggiunto proprieta' .Foreground e .Background

aggiunto eventi:

SearchBox_Popup
SearchBox_Change
SearchBox_Found
SearchBox_NotFound

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #19 il: 05 Settembre 2010, 21:19:33 »
ottimo domani gli do una bella occhiata, son arrivato ora da 2 giorni di montagna e sono troppo stanco !  ;D

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.272
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #20 il: 06 Settembre 2010, 08:07:31 »
Ciao... Ho 'aggiustato' anche l'evento LostFocus. Adesso se lascio la lista senza ritornare nella textbox mi scatena l'evento... dovrebbe essere corretto cosi'  ;)
Per adesso l'oggetto ListBox viene 'inglobato' nella form ove e' contenuto il componente... Provero' a togliere questa dipendenza per renderlo praticamente come una combobox...
Se non avete mai fatto caso, la lista della combobox esce dai dai bordi della form che la ospita.
Questo si puo' fare disegnando la lista su una nuova form: il problema e' far rimanere il focus alla textbox nel richiamare la lista... provero' oggi...

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #21 il: 18 Settembre 2010, 14:26:07 »
ciao milio , finalmente ho il tempo di provare la tua classe...
la sto provando su gambas3 ma sembra che non funzioni, il panel rimane vuoto  e non viene riempito

Offline fsurfing

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.484
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #22 il: 18 Settembre 2010, 14:31:11 »
ok , e bastato impostare a fill la proprieta arrangement del panel :)
« Ultima modifica: 18 Settembre 2010, 14:54:46 da fsurfing »

Offline milio

  • Senatore Gambero
  • ******
  • Post: 1.272
  • Chi parla poco dice tanto...
    • Mostra profilo
Re: creare entry con autocompletamento
« Risposta #23 il: 18 Settembre 2010, 23:33:36 »
Ciao... Finalmente l'hai provato! pensavo di aver scritto un po' di codice al vento :)

Ultimamente sto usando solo G3, e questo componente l'ho 'affinato' un attimino solo per questa versione...
Quindi apro un'altra discussione nel posto giusto prima che lo faccia qualcun'altro  :-X

http://www.gambas-it.org/smf/index.php?topic=1362.0