Ver Mensaje Individual
  #4  
Antiguo 21-07-2005
AnimAlf AnimAlf is offline
Registrado
 
Registrado: jul 2005
Posts: 1
Reputación: 0
AnimAlf Va por buen camino
Cambiar Color

Cita:
no te queda mas remedio que usar otro Statusbar
No es necesario, se puede hacer de otro modo:

Tenemos la StatusBar con Paneles, pues aquel que se quiera de otro color debe tener su propiedad Style como psOwnerDraw
Luego debemos averiguar la posición izquierda del panel detro de la StatusBar, lo veríamos activando por ejemplo en el evento OnDrawPanel de ésta, se pasará por ese evento cada vez que se tenga que pintar un panel que esté en ese estilo, nos llega con la constante Rect de cada panel y Rect.Left indica dicho valor. Ejemplo en un tercer panel donde Rect.Left := 153:

procedure TFormMain.StatusBarDrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
begin
if Rect.Left = 153 then
begin
StatusBar.Canvas.Font.Color:=clRed;
StatusBar.Canvas.TextOut(Rect.Left+3,Rect.Top+2,'El Escrito');
end;

end;

Responder Con Cita