Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.14;
Скачать: CL | DM;

Вниз

TrackBar   Найти похожие ветки 

 
Sonic90   (2007-09-15 13:42) [0]

Подскажите пожалуйста как сделать, чтобы при нажатии на TrackBar его ползунок сразу же переходил на место нажатия(чтобы не тянуть его до этого места).


 
{RASkov} ©   (2007-09-15 15:13) [1]

> [0] Sonic90   (15.09.07 13:42)

Может как нибудь так:

 TForm1 = class(TForm)
   ....
   TrackBar: TTrackBar;
   procedure FormCreate(Sender: TObject);
 private
   OldWndProc: TWndMethod;
   procedure NewWndProc(var Mes: TMessage);
 end;

............

procedure TForm1.FormCreate(Sender: TObject);
begin
 OldWndProc:=TrackBar.WindowProc;
 TrackBar.WindowProc:=NewWndProc;
end;

procedure TForm1.NewWndProc(var Mes: TMessage);
begin
 if Mes.Msg=WM_LBUTTONDOWN then
  TrackBar.Position:=Round((TrackBar.Max/(TrackBar.Width-20))*(TWMMouse(Mes).XPos-10));
 OldWndProc(Mes);
end;


Только вместо констант (20 и 10) желательно узнать "правильные значения", но я не нашел их(или плохо искал)....
Впрочем может и не правильная у меня "матиматика", так как матиматика вообще у меня хромает :(



Страницы: 1 вся ветка

Текущий архив: 2007.10.14;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.015 c
2-1190130186
Евгений Р.
2007-09-18 19:43
2007.10.14
Заштриховать область


6-1171376436
X-Nex
2007-02-13 17:20
2007.10.14
WebBrowser конец загрузки страницы


2-1190060011
NL
2007-09-18 00:13
2007.10.14
Что подумает об этом компилятор?


15-1189788494
Nic
2007-09-14 20:48
2007.10.14
Дизайн сайта


15-1189887624
wp2
2007-09-16 00:20
2007.10.14
Вот купил BlueTooth....