我无法将TTrackBar
拇指大小调整为更大的大小。见图片:
我的左侧有一个小拇指,但不能使其变大(但TrackBar本身没有)。
所需的拇指大小显示在带有红色区域的图像上。
也许我可以某种方式使用WINAPI?
C ++应用程序经常有更大的经验。
这就是我真正想要的:
最佳答案
似乎无法使用标准轨迹栏控件来完成。确实,我看不到与此相关的任何trackbar style或trackbar message。只有TBM_SETTHUMBLENGTH
,您也可以从VCL的TTrackBar.ThumbLength
访问,但是这也会影响背景下陷矩形的高度。
一个必然的结果是,我怀疑“ C ++应用程序经常有更大的经验”的说法。
当然,您始终可以创建your own trackbar-like control。
还是只想缩小下陷的矩形?然后只需在对象检查器中将ShowSelRange
设置为False
。但是,如果启用了主题,则您的拇指不能大于约24。
如果您使用的是不带TrackBar.ShowSelRange
的Delphi旧版本,则需要手动删除窗口样式TBS_ENABLESELRANGE
。您可以随时使用SetWindowLong
进行此操作,也可以在子类轨迹栏控件的CreateParams
中进行此操作。最简单的方法可能是使用“插入器类”:
type
TTrackBar = class(ComCtrls.TTrackBar)
protected
procedure CreateParams(var Params: TCreateParams); override;
end;
...
implementation
{ TTrackBar }
procedure TTrackBar.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.Style := Params.Style and not TBS_ENABLESELRANGE;
end;
若要使外观出现在Notepad ++屏幕快照中,还应将
TickMarks
设置为tmBoth
,将TickStyle
设置为tsNone
。但是,这不能回答您的问题,该问题是使拇指变大。这将使下沉的矩形变小...但是,从您的屏幕截图中,我想这就是您想要的。