Mega Code Archive

 
Categories / Delphi / VCL
 

[] Dbgrid ve memo alanlar

Codec By GeNiUS ! genius@turkiye.com DBGrid bileşeninde Memo/Blob alanlar <memo> olarak gösterilir. Aşağıdaki örnekte bu tür alanların da metin olarak görüntülenmesi sağlanmaktadır. Table bileşeni üzerine yüklenen kolonlardan NOTES alanı MEMO tipindedir. Bu alanın GetText yordamında Blob2Str fonksiyonu kullanılarak, alandaki veri görünür hale getirilmektedir. procedure TForm1.Table1NotesGetText(Sender: TField; var Text: String; DisplayText: Boolean); begin Text := Blob2Str(TMemoField(Sender)); end; Blob2Str fonksiyonu: function Blob2Str(TheField : TMemoField): String; var Buffer: PChar; MemSize: Integer; tmp:string; begin if TheField.IsNull then Result := '' else with TBlobStream.Create(TheField, bmRead) do begin MemSize := Size; Inc(MemSize); Buffer := AllocMem(MemSize); Read(Buffer^, memsize); Free; end; result:=strpas(buffer); end;