Cita:
Empezado por bustio
Exactamente eso fue lo que hice. Tome el parametro DataCol para solo hacerle el pintado a la primera columna y funciono.. tu ejemplo esta muy bien y muy bueno. Pero tiene un defecto.. al menos a mi me lo hace. El texto cuando lo lee y lo muestra no se ve completo... solo a partir del 2 caracter y cuando trato de marcarlo con el Mouse para darle "<-" con el cursor vuelve a mostrar el valor: (MEMO).
|
Lo de que se vea el 2º caracter lo controla la constante(DX):
Código Delphi
[-]
DBGrid1.Canvas.TextRect(Rect, Left + DX, Rect.Top + DY, Str);
Revisa que la hayas colocado Bien. Al entrar te vuelve a mostrar (MEMO) porque ésta soilución sólo sirve para Visualizar, no para editar.
Otra opción (que tb permite editar) es la siguiente; Añadir al TTable/TQuery/... los Fields y programar los atributos OnGetText y OnSetText del TField(en éste caso un TMemoField) con el siguiente código:
Código Delphi
[-]
procedure TForm1.Table1NotesGetText(Sender: TField; var Text: String; DisplayText: Boolean);
begin
Text:= Trim (Sender.asString);
end;
procedure TForm1.Table1NotesSetText(Sender: TField; const Text: String);
begin
Sender.AsString := Text;
end;
Es mejorable, ya que al editar aparecen los saltos de línea pero puede servir.