Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 4 odgovora
  • 4.356 pregleda

Najnovija ↓

DBGrid (ClientDataSet): izostavljanje nula 21.11.2006. u 20:03 · pre 242 meseca #1
dakle, ćelije u u DBGridu u kojima bi se inače prikazala nula treba da budu prazne...

pokušao sam da napravim generičko rešenje u OnDrawColumnCell, i to tako da se
font u ćelijama koje sadrže nulu izjednači sa pozadinom; problem je u tome što se
nula ipak iscrtava kada preko polja pređe selekcija, te sam odustao od tog rešenja
usled nedostatka vremena...


pritisnut sam zahtevima, svaka pomoć / savet / lepa reč je dobrodošla :)

Re: DBGrid (ClientDataSet): izostavljanje nula 21.11.2006. u 21:04 · pre 242 meseca #2
Citat:
sdejan:
...pokušao sam da napravim generičko rešenje u OnDrawColumnCell, i to tako da se
font u ćelijama koje sadrže nulu izjednači sa pozadinom;...

Mislim da možeš i tako, samo nemoj da mijenjaš font, nego postavi da je

Text := '';

kad je izjednačeno sa nulom (ili nekako slično, možda sam lupio, ne mogu sad da probam).
Ako to ne može, pogledaj malo u Delphi helpu za DisplayFormat ili
za TField.OnGetText. Mislim da ima i primjera.
Re: DBGrid (ClientDataSet): izostavljanje nula 21.11.2006. u 23:06 · pre 242 meseca #3
ideja:
posto koristis DBGrid, DataSetu njegovog DataSourcea dodaj calculated field tipa string koji ce se racunati:

Code:

procedure TForm1.ADOTable1CalcFields(DataSet: TDataSet);
begin
  if ADOTable1Field1.Value=0 then
    ADOTable1NoviField.Value:=''
  else
    ADOTable1NoviField.Value:=FloatToStr(ADOTable1Field1.Value)      // ili FormatFloat pa lepo napravis Mask
end;


onda iz DBGrid-a izbacis Field1 i ubacis NoviField.

Pozdrav
Re: DBGrid (ClientDataSet): izostavljanje nula 22.11.2006. u 08:10 · pre 242 meseca #4
Ako koristiš ClientDataSet, može i ovako:
Code:

procedure TForm1.ClientDataSet1AAAGetText(Sender: TField;
  var Text: String; DisplayText: Boolean);
begin
  if Sender.AsInteger=0 then
    Text:=''
end;


Trebalo bi da radi i za ADO (ali neću da tvrdim jer koristim DBExpress)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme