Autore Topic: [RISOLTO] combobox intelligente  (Letto 1532 volte)

Offline giango

  • Grande Gambero
  • ***
  • Post: 164
    • Mostra profilo
[RISOLTO] combobox intelligente
« il: 31 Ottobre 2014, 17:24:59 »
Qualcuno in questo forum ha forse già realizzato una funzione che permette di posizionarsi sulla prima ricorrenza
di un item in una combo quando si digitano le prime lettere dell'item richiesto?
Era una funzione già implementata di default nell'oggetto combo di altri software, ma qui non l'ho trovata, a meno che....
a meno che sia proprio io che non so cercare!
Grazie.
« Ultima modifica: 31 Ottobre 2014, 17:48:57 da giango »

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: combobox intelligente
« Risposta #1 il: 31 Ottobre 2014, 17:32:47 »
Per mera curiosità ti segnalo questo tentativo:
http://www.gambas-es.org/viewtopic.php?f=4&t=1441&highlight=combobox
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline giango

  • Grande Gambero
  • ***
  • Post: 164
    • Mostra profilo
Re: combobox intelligente
« Risposta #2 il: 31 Ottobre 2014, 17:36:47 »
Ma guarda un pò! Qualcuno ci aveva gia pensato.
Grazie per la dritta vuott, ho quasi ultimato il mio lavoro e volevo proprio
arricchirlo con questa chicca. Grazie!

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #3 il: 31 Ottobre 2014, 17:52:58 »
Ma forse... si può fare più semplicemente...
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline giango

  • Grande Gambero
  • ***
  • Post: 164
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #4 il: 31 Ottobre 2014, 18:21:37 »
Ma forse... si può fare più semplicemente...
Si, probabilmente hai ragione. Ho notato che se si clicca sulla combo in modo che si apra, digitando la lettera
del nome richiesto, ne avviene il posizionamento automatico, che è quello che desidero.
Basterebbe fare in modo che intercettando l'evento Enter (quando il cursore vi entra) la combo si espanda
in modo automatico. Sto ancora cercando quale è il metodo per farla aprire però!!!

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #5 il: 31 Ottobre 2014, 20:16:24 »
Proporrei per la tua questione iniziale questa soluzione:   :-X
Codice: gambas [Seleziona]
Public Sub Form_Open()

  ComboBox1.Tag = 1

End


Public Sub ComboBox1_Change()

  With ComboBox1
    .Text = ComboBox1[.List.Find(String.Left(.Text, .Pos) & "*", gb.Like)].Text
    .Pos = .Tag
  End With

End



Public Sub ComboBox1_KeyRelease()

 If Key.Code < 127 Then
   Inc ComboBox1.Tag
 Else
   ComboBox1.Tag = ComboBox1.Pos + 1
 Endif

End
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline giango

  • Grande Gambero
  • ***
  • Post: 164
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #6 il: 31 Ottobre 2014, 20:20:40 »
Ohibò! Qui si parla di TAG, un coso che non ho mai preso in esame!
Intanto ci provo, e poi mi devo documentare in modo completo!
Grazie.

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #7 il: 31 Ottobre 2014, 20:35:59 »
Ohibò! Qui si parla di TAG...

...ma... guarda, niente di che !
L'ho voluto usare al posto di una variabile globale, al solo fine di rendere (nonostante la proprietà .Tag occupi più memoria essendo un Variant) l'intero codice più essenziale possibile.
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline giango

  • Grande Gambero
  • ***
  • Post: 164
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #8 il: 31 Ottobre 2014, 21:24:12 »
Una variabile globale dici, ma non comprendo la relazione esistente fra quest'ultima ed una proprietà dell'oggetto combo, come il "tag"!
O perlomeno sono rimasto al punto che una variabile è fine a se stessa, ovvero una allocazione di memoria che mantiene un dato
durante la sessione del prg, mentre questo "tag" che non deve essere il giorno in tedesco, appartiene all'oggetto combo, in questo
caso, e ne determina una caratteristica. O sbaglio?

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 959
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #9 il: 31 Ottobre 2014, 21:33:30 »
Il tag è semplicemente una proprietà "di appoggio" che puoi usare come più ti pare ed è può essere utile a vari scopi, come ad es. per distinguere vari oggetti simili appartenenti ad un medesimo gruppo, o memorizzare variazioni in un determinato oggetto a seguito di un evento o calcolo particolare. Gli usi possono essere vari.
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline giango

  • Grande Gambero
  • ***
  • Post: 164
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #10 il: 31 Ottobre 2014, 21:41:07 »
Penso di capire. E' dunque una proprietà vuota che appartiene all'oggetto,
in cui memorizzare qualsiasi cosa che ha relazione col medesimo.
Ho detto bene?

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.723
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #11 il: 31 Ottobre 2014, 21:44:54 »
In una mia vecchia discussione guarda che ho combinato:

http://www.gambas-it.org/smf/index.php?topic=2184.0
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline giango

  • Grande Gambero
  • ***
  • Post: 164
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #12 il: 31 Ottobre 2014, 21:52:27 »
E' una megaproprietà sto TAG...... E bravo vuott!
Qui si impara di tutto, e forse qualche volta, anche aspetti di gambas
che forse nemmeno lo stesso autore ha previsto.
Per quanto riguarda il tuo codice, è una bomba! E' di una compattezza
impressionante rispetto a quello proposto dallo spagnolo.
Lo devo testare bene ed analizzare se vi è qualcosa che magari disturba
se si premono tasti non appropriati e così via.
Grazie di nuovo; sei un pozzo (nel senso buono, si intende)

Offline Top Fuel

  • Gran Maestro dei Gamberi
  • *****
  • Post: 959
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #13 il: 31 Ottobre 2014, 21:55:54 »
In pratica ci puoi mettere vita morte e miracoli dell'oggetto. ;)
Dear youtube administrators, your search bar is broken. When I type the letter "J" it appears justin bieber when it should appear Jimi Hendrix. Fix this, please.

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re: [RISOLTO] combobox intelligente
« Risposta #14 il: 31 Ottobre 2014, 22:49:32 »
Quando sostengo che questo sito è una vera e propria preziosissima miniera di informazioni, non riesco comunque a descriverlo completamente.
Questa cosa mi era del tutto sconosciuta e dire che avevo fatto ricerche (accurate!?) sulle Strutture & C.
Di Tag ignoravo l'esistenza sig! La cosa un po mi demoralizza mi sento sempre più inadeguato all'improbo compito che mi sono dato.
Però ai nuovi arrivati non si può mica dire tutto no?
 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro