Как создать TrackBar, в котором вместо широкой белой полоски с ползунком была бы тонкая линия?
// В примере создается компонент, унаследованный от TTrackbar
// который переопределяет метод CreateParams и убират флаг
// TBS_ENABLESELRANGE из Style. Константа TBS_ENABLESELRANGE
// обьявлена в модуле CommCtrl
uses
{...,} CommCtrl, ComCtrls;
type TMyTrackBar = class(TTrackBar)
public
procedure CreateParams(var Params: TCreateParams); override;
end;
var
Form1: TForm1;
MyTrackbar: TMyTrackbar;
implementation
{ TMyTrackBar }
procedure TMyTrackBar.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.Style := Params.Style and not TBS_ENABLESELRANGE;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
MyTrackBar := TMyTrackbar.Create( Form1 );
MyTrackbar.Parent := Form1;
MyTrackbar.Left := 10;
MyTrackbar.Top := 10;
MyTrackbar.Width := 150;
MyTrackbar.Height := 45;
MyTrackBar.Visible := true;
end;
|