Fórum Visualizando um campo Memo no DBGrid #227475

22/04/2004

0

Fala pessoal do Forum!

Preciso fazer com que o conteúdo de um campo Memo do meu banco de dados, seja visualizado num DBGrid.

Alguém pode me dar uma ajuda? Estou precisando demais disso...
Desde já agradeço!

wbb


Wbb

Wbb

Responder

Posts

22/04/2004

Rafael.valler

:idea:Tenta isso pra ver se dá certo:

Procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
R : TRect;
begin
R:=Rect;
Dec(R.Bottom,2);
if Column.Field=Table1Memo then
begin
if not (gdSelected in State) then
DBGrid1.Canvas.FillRect(Rect);
DBGrid1.Canvas.TextRect(R,R.Left,R.Top,
Table1Memo.AsString,Integer(AlignmentFlags_WordBreak));
end;
end;


Responder

Gostei + 0

22/04/2004

Jeová Soares

utilize o seguinte código no evento OnDrawColumnCell do DBGrid:

Var
R : Rect;
Begin
R := Rect;
Dec(R.Bottom,2);
If Column.Field = ClientDataSet1OBS Then Begin
If Not (gdSelected in State) Then
DBGrid1.Canvas.FillRect(Rect);
DrawText(DBGrid1.Canvas.Handle,PChar(ClientDataSet1OBS.AsString),Length(ClientDataSet1OBS.AsString),R,DT_WORDBREAK);
End;
End;


Para mais personalização de DBGrids procure adquirir a revista Clube Delphi nº 44 (Segredos do DBGrid).
É fantástica...


Responder

Gostei + 0

23/04/2004

Wbb

Obrigado pessoal.

Só uma observação: Os código acima têm pequenos problemas. Da forma abaixo funcionou:

Var R : TRect;
begin
   R:=Rect;
   Dec(R.Bottom,2);
   if Column.Field = DataSetCAMPO_MEMO then
   begin
      if not (gdSelected in State) then
         DBGrid1.Canvas.FillRect(Rect);
      DBGrid1.Canvas.TextRect(R, R.Left, R.Top, DataSetCAMPO_MEMO.AsString);
   end;

Valeu e T+
wbb


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar