Italian community of Lazarus and Free Pascal

Programmazione => LCL => Topic aperto da: Fabio - Aprile 17, 2012, 09:49:57 pm

Titolo: Impostare EditMask ad una cella di un TDBGrid a runtime
Inserito da: Fabio - Aprile 17, 2012, 09:49:57 pm
Sapete come fare per impostare le maschere nelle celle del dbgrid?

Popolo il dbgrid da sql, poi però ad esempio una colonna CAP vorrei mettergli la maschera "00000;1;_", ho provato con:

Codice: [Seleziona]
MyGrid.Columns[2].Field.EditMask:='00000;1;_';

Ma quando si edita la cella si può inserire quello che si vuole ugualmente.
Titolo: Re:Impostare EditMask ad una cella di un TDBGrid a runtime
Inserito da: Stilgar - Aprile 18, 2012, 03:21:55 am
Ciao,
 allora parto subito con le mie domande di rito ;)
La DBGrid la "popoli" nel senso che agganci la connessione e poi lasci che faccia tutto lei (reperire il nome delle colonne e il resto)?
O prima imposti le colonne che ti interessano (quindi hai un TDataSource agganciato a design time?)

In ogni caso, prova a verificare il DisplayFormat come property.
C'erano delle rognette, ma da quello che capisco sono state fixate ;)

http://bugs.freepascal.org/view.php?id=20903
Titolo: Re:Impostare EditMask ad una cella di un TDBGrid a runtime
Inserito da: Fabio - Aprile 18, 2012, 07:57:09 am
Il dbgrid si popola da solo in base alla SQL della dbquery.

Provo a vedere quella proprietà intanto grazie.
Titolo: Re:Impostare EditMask ad una cella di un TDBGrid a runtime
Inserito da: Fabio - Aprile 18, 2012, 08:30:00 am
Citazione
unitCities.pas(55,31) Error: identifier idents no member "DisplayFormat"

Non ho la proprietà DisplayFormat nell'oggetto Field.
Titolo: Re:Impostare EditMask ad una cella di un TDBGrid a runtime
Inserito da: Stilgar - Aprile 18, 2012, 09:11:54 am
Via Designer l'ho vista :(
In ogni caso puoi intervenire sul Field ....
Mal che ti vada devi gestire il getText e il setText ...