Fórum Botões no StatusBar #179049

01/09/2003

0

É possível colocar botões e imagens clicaveis num StatusBar ???
Caso sim, como?


Eniorm

Eniorm

Responder

Post mais votado

01/09/2003

655 - Como colocar imagens numa StatusBar
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ImgList, ComCtrls;

type
TForm1 = class(TForm)
StatusBar1: TStatusBar;
ImageList1: TImageList;
procedure StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}
{Adicione um StatusBar e um ImageList, iclua no imagelist as figuras que deseja
mostrar apos mude a propriedade Style dos Panels do StatusBar para psOwnerDraw,
em seguida inclua o codigo abaixo no evento OnDrawPanel do StatusBar}

procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
begin
with StatusBar1.Canvas do
begin
FillRect(Rect);
//Definir Font e Style
Font.Name := ´Arial´;
Font.Color := ClNavy;
Font.Style := [FsBold];
//Desenha as imagens de acordo com o indice de cada panel
ImageList1.Draw(StatusBar1.Canvas,Rect.Left+5,Rect.Top+1,Panel.Index);
//Escreve o texto em cada panel
if Panel.Index = 0 then
TextOut(Rect.Left + 25, Rect.Top + 1,´LloydSoft - Panel1´);
if Panel.Index = 1 then
TextOut(Rect.Left + 25, Rect.Top + 1,´LloydSoft - Panel 1´);
if Panel.Index = 2 then
TextOut(Rect.Left + 25, Rect.Top + 1,´LloydSoft - Panel 2´);
end;
end;
end.


Joilson_gouveia

Joilson_gouveia
Responder

Gostei + 1

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar