Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: carmelo81 - Gennaio 03, 2014, 02:15:02 pm

Titolo: Ricerca valori in stringgrid
Inserito da: carmelo81 - Gennaio 03, 2014, 02:15:02 pm
Buondi...
Al variare del testo in combobox devo far spuntare in un edit un certo valore.
Ho gia un file mdb da dove estrarre tali valori ma poichè non ho tempo per studiare il funzionamento dei database (anche se vorrei tanto!) vorrei copiare i valori che mi interessano in una stringgrid o in memo o in un listbox per poi richiamare la stringa che mi serve.

Consigli?

Grazieebuonsabato
Titolo: Re:Ricerca valori in stringgrid
Inserito da: nomorelogic - Gennaio 03, 2014, 02:19:34 pm
spero di non aver capito male quello che devi fare

secondo me potresti usare una TStringList in cui ci metti tutti i valori presi dal DB
se in una TStringList ad esempio una riga è: "VALORE1=DECODIFICA 1"

allora al variare del valore del combo puoi fare qualcosa tipo:

Codice: [Seleziona]
var sl: TStringList;
      s: string;
begin
...
s := 'VALORE1'; // valore chiave nel combo
Edit1.Text := sl.Values[s];  // in Edit1.Text ci va il valore 'DECODIFICA 1'
...
end;
Titolo: Re:Ricerca valori in stringgrid
Inserito da: carmelo81 - Gennaio 03, 2014, 03:44:11 pm
spero di non aver capito male quello che devi fare
devo fare questo:

nome   01
cose    03
citta     02

seleziono 'cose' nel combo e nell'edit deve spuntare 03 e cosi via.

sembrerebbe interessante ma non ho capito la spiegazione iniziale.
devo mettere una condizione?
Considera che ho 9000 righe...
Titolo: Re:Ricerca valori in stringgrid
Inserito da: nomorelogic - Gennaio 03, 2014, 03:50:50 pm
leggi qua http://www.freepascal.org/docs-html/rtl/classes/tstrings.values.html (http://www.freepascal.org/docs-html/rtl/classes/tstrings.values.html)


in poche parole:
1) devi caricare le 9000 righe nella TStringList, formato "chiave=valore"
3) devi caricare nel combo le 9000 chiavi
2) nell'OnChange del Combo metti l'istruzione:
Codice: [Seleziona]
Edit1.Text := sl.Values[ Combo1.Text ];


Se i tempi sono troppo lunghi forse dovresti usare un dataset...
Titolo: Re:Ricerca valori in stringgrid
Inserito da: carmelo81 - Gennaio 03, 2014, 04:16:49 pm
Negli esempi contenuti nella cartella di lazarus c'è 'AddressBok'.
Potrebbe essere un buon punto di partenza?
Grazie ancora