16/02/2006

ADO - como carregar campos MEMO na dbgrid e mostrar dados?

Seguinte, estou carregando um banco de dados meu em access em uma dbgrid... estou usando o ADO e talz...

carregar eu carrego blz... soh q tipo os campos mesmos...
nao aparecem o conteudo...
soh aparecem escritos .. MEMO

alguem sabe oq fao pra q ele mostre o conteudo da lista qndo eu der um SELECT * From tabela .. pra ele carregar na dbgrid os registros?


valeu :P


Salsa

Respostas

16/02/2006

Paullsoftware

tenta assim..
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
  R : TRect;
begin
  (*exibe campo memo*)
  R:=Rect; // declara uma variável local R : TRect
  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;



Responder Citar

16/02/2006

Salsa

o que eh o:

ClientDataSet1OBS


???


Responder Citar

16/02/2006

Paullsoftware

o que eh o: ClientDataSet1OBS ???


seria o nome de SuaTabelaCampoObervacoes..


Responder Citar

16/02/2006

Salsa

Query.FieldByName(´campo´).AssString

c tah dizendo?


Responder Citar

16/02/2006

Salsa

nao tem como eu pegar automaticamente se o campo eh memo e fazer ele executar esse eskema no nome da coluna?

eh q tipo trabalho com varias tabelas... ae queria pegar se fosse uma coluna memo..!!!


Responder Citar

17/02/2006

Rafael Gomes

amigo, basta colocar esse codigo no evento [b:e0908a6da7]OnGetText[/b:e0908a6da7] do seu filed Memo.

procedure TDmRE.AuxdescEnquadramentoGetText(Sender: TField;
  var Text: String; DisplayText: Boolean);
begin
  Text:= DmRe.Aux.fieldByName(´DescEnquadramento´).AsString;
end;


adapte o codigo de acordo com sua necessidade ...
abraços!!


Responder Citar