Ver Mensaje Individual
  #25  
Antiguo 22-02-2012
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 688
Reputación: 21
olbeup Va camino a la fama
Hola gianfranco_tont

En tu SQL al principo pon un campo como el siguiente y después te diré para que es:
Código SQL [-]
SELECT
    0 AS NUMITEM <-- Este es el que vamos a modificar con el RecNo del DBGrid
    ,CAMPO1  |
    ,CAMPO2  | --> Esto son tus campos de la DB
    ,CAMPOX  |
    ,....
Después en el DrawColumnCell del DBGrid tienes que poner esto:
Código Delphi [-]
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
  FieldText: String;
  W: Integer;
begin
  if (DataCol = 0) then
    with DBGrid1.DataSource.DataSet do
      FieldText := IntToStr(RecNo);

  with DBGrid1 do
    if (DataCol = 0) then
    begin
      W := ((Rect.Right - Rect.Left) - Canvas.TextWidth(FieldText));
      DefaultDrawing := True;
      Canvas.FillRect(Rect);
      Canvas.TextOut(Rect.Left + W -2, Rect.Top +2, FieldText);
    end
    else
      DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
Espero haberte orientado.

Un saludo.
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber.

Última edición por olbeup fecha: 22-02-2012 a las 09:42:31.
Responder Con Cita