Ver Mensaje Individual
  #4  
Antiguo 16-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
Determinar sobre cual se hizo clic es aritmética simple. Si las imágnes son de ancho/alto fijo, es mucho mas sencillo aún:

Como una idea:

Código Delphi [-]
TForm1 = class(TForm)
//...
private
  FLastMousePos: TPoint;
end;

implementation
//...

procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState;
  X, Y: Integer);
begin
  FLastMousePos.X := X;
  FLastMousePos.Y := Y;
end;

procedure TForm1.Panel1Click(Sender: TObject);
var
  IndiceImagen: Integer;
begin
  IndiceImagen := (FLastMousePos.Y div AltoEstandar) * ImagenesPorFila
                        + (FLastMousePos.X div AnchoEstandar);
  ClickEnImagen(IndiceImagen);
end;

Claro que hay que probarlo, y afinarlo... pero con eso ya te irás encaminando.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita