Ver Mensaje Individual
  #14  
Antiguo 15-10-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
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.

A ver...

Supongamos que tenes diez canchas y vas a disponer de diez paneles para representar el estado de cada una. Le vamos a dar por nombres: pnlCancha1, pnlCancha2, ..., pnlCancha10.

Entonces un modo de pintar las canchas reservadas de color rojo es:
Código Delphi [-]
...
var
  P: TComponent;
begin
  tuQuery.Close;
  tuQuery.SQL.Text := 'AQUI LA CONSULTA QUE ARROJARÁ LOS ESTADOS DE LAS DIEZ CANCHAS';
  tuQuery.Open;
  while not tuQuery.Eof do
  begin
    P := FindComponent('pnlCancha' + IntToStr(tuQuery.FieldByName('ID_CANCHA').AsInteger));
   if Assigned(P) and (tuQuery.FieldByName('ESTADO').AsString = 'R') then
      TPanel(P).Color := clRed;
    tuQuery.Next;
  end;
  tuQuery.Close;
end;
Es claro que el nombre dado a los paneles debe estar compuesto por: Un nombre a tu antojo (en el ejemplo "pnlCancha") más el ID de la cancha a la que representa.

Ese código definitivamente pintará de rojo cada panel que represente a una cancha cuyo estado sea "reservado". De no ser así reformulá el código SQL de tu consulta.

Saludos
__________________
Daniel Didriksen

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

Última edición por ecfisa fecha: 15-10-2013 a las 07:34:29.
Responder Con Cita