怎样使TrackBar实现鼠标点到哪个位置划块就到哪个位置呢 现在划块是按照pagesiza的大小来翻页的,很不方便 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 unit Unit1;interfaceuses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls;type TMytrack = class(TTrackBar) property Onclick; property OnMouseDown; end; TForm1 = class(TForm) TrackBar1: TTrackBar; Button1: TButton; procedure Button1Click(Sender: TObject); private t: TMytrack; procedure TrackMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); public { Public declarations } end;var Form1: TForm1;implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);begin t := TMytrack.Create(self); t.Parent := self; t.OnMouseDown := TrackMouseDown;end;procedure TForm1.TrackMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin t.Position := round(((x-t.Left) / t.Width) * (t.Max - t.Min) + t.Min);end;end.参考一下吧 将trackbar拉大后发现在滑快右边点击也有这个问题就是当点击的位置越靠两边的时候,滑快往中间偏移的量就越大 min和max之间的差大一点就会好一点,主要是由于要根据鼠标位置取整丧失精度 类的存储结构 delphi的控件限定取值修改的问题? 如何学才能学好delphi呢??请高手解答一下,在线等。。 有两个adoquery1,adoquery2,如何设置他的主从关系? 请教关于mx邮件发送! 有谁熟悉联通的H2接口,能简要介绍一下吗? 请教一个C代码转换成delphi的简单问题 怎样在label的标题中输入平方毫米的英文字母? 好久没有上网了来看看DELPHI也好久没有用了。 请问直接弹出输入字符串的对话框的函数是甚麽? 如何设定StringGrid中某一行的显示颜色 昨天晚上碰到一个PLMM,散分
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ComCtrls, StdCtrls;type
TMytrack = class(TTrackBar)
property Onclick;
property OnMouseDown;
end;
TForm1 = class(TForm)
TrackBar1: TTrackBar;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
t: TMytrack;
procedure TrackMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.DFM}procedure TForm1.Button1Click(Sender: TObject);
begin
t := TMytrack.Create(self);
t.Parent := self;
t.OnMouseDown := TrackMouseDown;
end;procedure TForm1.TrackMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
t.Position := round(((x-t.Left) / t.Width) * (t.Max - t.Min) + t.Min);
end;end.参考一下吧