Ver Mensaje Individual
  #2  
Antiguo 27-10-2006
afxe afxe is offline
Miembro
 
Registrado: jul 2004
Ubicación: Malaga-España
Posts: 273
Reputación: 20
afxe Va por buen camino
Me respondo yo: Teneis razón... era demasiado obvio.

Asignar un TImageList, era tan simple la respuesta al cómo poner un gráfico en los tabs que no merecía la pena ni que contestarais.... Para controlar el OnClick sobre el Bitmap que se dibuje he programado el evento onMouseUp de la siguiente forma:

Código:
procedure TFrmMain.tcVentanasMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
  i : Integer;
begin
  i := tcVentanas.TabRect(tcVentanas.TabIndex).Left;
  if PtInRect(Rect(7,2,20,16), Point(X-i, Y)) then
    SendMessage((tcVentanas.Tabs.Objects[tcVentanas.TabIndex] as TForm).Handle, WM_CLOSE, 0, 0);
end;
Y funciona perfectamente (ni que decir tiene que los forms que se abren los he asociado a la lista Objects de los Tabs del TabControl).

En cuanto a la pregunta de si es la mejor forma de hacerlo, queda en el aire por si alguien da alguna idea...
Responder Con Cita