Содержание материала

 

Code:

unit adStatba;

 

interface

 

uses

 

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

ComCtrls;

 

type

 

TAdrockStatusBar = class(TStatusBar)

private

{ Private declarations }

protected

{ Protected declarations }

public

{ Public declarations }

Constructor Create(Aowner : TComponent); override;

published

{ Published declarations }

end;

 

procedure Register;

 

implementation

 

Constructor TAdrockStatusBar.Create(Aowner : TComponent);

begin

 

inherited Create(Aowner);

ControlStyle := ControlStyle + [csAcceptsControls];

end;

 

procedure Register;

begin

RegisterComponents('Adrock', [TAdrockStatusBar]);

end;

 

end.

 

Это позволит вам разместить элемент управления в панели. Но этот способ не поддерживает использование вложенных панелей. Вероятно, вам также понадобиться выровнять элемент управления по правому краю. Не так это все сложно...

 

pgProgress положить на форму как Visible := false; StatusPanel надо OwnerDraw сделать и pефpешить, если Position меняется.

Code:

procedure TMainForm.stStatusBarDrawPanel(StatusBar: TStatusBar; Panel: TStatusPanel; const Rect: TRect);

begin

{©Drkb v.3: www.drkb.ru}

if Panel.Index = pnProgress then

begin

   pgProgress.BoundsRect := Rect;

   pgProgress.PaintTo(stStatusBar.Canvas.Handle, Rect.Left, Rect.Top);

end;

end;

 

With TProgressBar.Create(StatusBar1) Do Parent:=StatusBar1;

 

 

Автор: Song

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить