Ver Mensaje Individual
  #3  
Antiguo 20-09-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Jere_84.

Como bién te dijo Casimiro, es como el juego de la guerra naval, donde accedes a cada celda dándole un índice a las columnas y otro a las filas.

Te pongo un ejemplo simple con un TStringGrid, sin ningún tipo de optimización para lograr la mayor compatibilidad posible, ya que no sé que propiedades pueda tener el control JfDBGrid.
Código Delphi [-]
const
  MAXCOLOR = 4;
  MAXTALLE = 4;
  COLORES: array [1..MAXCOLOR] of string = ('Rojo','Azul','Amarillo','Violeta');
  TALLES : array [1..MAXTALLE] of string = ('S','M','L','XL');

procedure TForm1.FormCreate(Sender: TObject);
var
  c,f: Integer;
begin
  Randomize();
  with StringGrid1 do
  begin
    ColCount  := MAXCOLOR + 1; // Cantidad de columnas
    RowCount  := MAXTALLE + 1; // Cantidad de filas
    FixedCols := 1;            // Columnas fijas (titulo col)
    FixedRows := 1;            // Filas fijas (titulo fil)
    // Encabezado de columnas
    for c := 1 to MAXCOLOR do Cells[c,0] := COLORES[c];
    // Encabezado de filas
    for c := 1 to MAXTALLE do Cells[0,c] := TALLES[c];
  end;
end;

procedure TForm1.btnLlenarClick(Sender: TObject);
var
  c,f: Integer;
begin
   // Llenar cantidades al azar
  with StringGrid1 do
    for c := FixedCols to MAXCOLOR do
      for f := FixedRows to MAXTALLE do
        Cells[c,f] := IntToStr(Random(50)+1); // (Cantidad de productos)
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita