Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-11-2005
Avatar de sakuragi
sakuragi sakuragi is offline
Miembro
 
Registrado: feb 2004
Ubicación: root
Posts: 1.435
Poder: 24
sakuragi Va por buen camino
bueno gracias por contestar.

bueno creo lo que tengo es un problema espesifico.


eh tratado de modificar las condiciones para poder que me arroje el resultado que deseo que es.


digamos tengo el StringGrid con los campos

nombre | direccion | cantidad | sucursal
tecate calle 3 matriz
tecate otracalle 1 sucursal1
tecate calle 1 sucursal2
tecate calle 1 sucursal3


entonses digamos que lleno el primer campo nombre (nombre de la empresa)
direccion(calle cuaquiere), cantidad(de cuantas sucursales va tener), sucursal(Nombre de la sucursal).

entonses cuando de "enter" el la primera linea me arroja el resultado de las otra 3 sucursales, esto hace referencia a las cantidad = 3.

entonses yo quiero poder pintar diferente, del renglon principal, alos renglones hijos, pintandolos de color diferente, al renglon principal,

no eh podido hayar la condicion para dividir cuando pintar el colo diferente, dependiendo de la "cantidad" del renglon principal.


gracias espero haver sido mas claro

saludos
__________________
OpenSuse OpenOffice.org icomputo
Responder Con Cita
  #2  
Antiguo 26-11-2005
Avatar de Héctor Randolph
[Héctor Randolph] Héctor Randolph is offline
Miembro Premium
 
Registrado: dic 2004
Posts: 882
Poder: 22
Héctor Randolph Va por buen camino
Hola sakuragi.

Me he permitido modificar el código que publicó Juan Antonio para adaptarlo a tu pregunta.

Las modificaciones que hice son para consultar el contenido de una columna en específico y pintar el renglón actual dependiendo de una condición.

En este ejemplo consulto el contenido de la columna 3 y si el contenido es par, entonces pinto todo el renglón de azul.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  I:Integer;
begin
  // Llena el grid con algunos números
  StringGrid1.RowCount:=6;
  StringGrid1.ColCount:=6;
  for I:=1 to 5 do
    StringGrid1.Cells[3,I]:=IntToStr(I);
  StringGrid1.Invalidate;
end;

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var
  S:String;
  Col3: Integer;
begin
    Col3:=-1;
    S:=(Sender as TStringGrid).Cells[3, ARow];
    if S<>'' then Col3:=StrToInt(S);
    with Sender as TStringGrid do
    begin
      if (ACol < FixedCols) or (ARow < FixedRows) then //Es una celda fija?
        Canvas.Brush.Color := FixedColor
      else
      if ( Col3 mod 2 =0) then // El contenido de la columna 3 es par?
      Begin
        Canvas.Brush.Color := clBlue;
        Canvas.Font.Color := clSilver;
      end
      else Begin
        Canvas.Brush.Color := Color;
        Canvas.Font:= Font;
      end;
      Canvas.FillRect(Rect);
      Canvas.TextRect(Rect, Rect.Left+2, Rect.Top+2, (Sender as TStringGrid).Cells[ACol, ARow]);
      if gdFocused in State then Canvas.DrawFocusRect(Rect);
    end;
end;

Sólo falta adaptarlo para tu caso en particular.

Saludos
Responder Con Cita
  #3  
Antiguo 28-11-2005
Avatar de sakuragi
sakuragi sakuragi is offline
Miembro
 
Registrado: feb 2004
Ubicación: root
Posts: 1.435
Poder: 24
sakuragi Va por buen camino
gracias

lo probare


saludos
__________________
OpenSuse OpenOffice.org icomputo
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 07:46:26.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi