首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TTrackbar从右到左而不是从左到右工作

TTrackbar从右到左而不是从左到右工作
EN

Stack Overflow用户
提问于 2016-01-25 21:44:13
回答 1查看 601关注 0票数 0

我正在寻找一种方法,以获得一个特定的德尔福火猴TTrackbar行为改变在我的Delphi10.1西雅图安卓应用程序。

我想实现什么?轨迹栏有一个拇指,用户可以移动。它在轨道上运行,轨道的左侧从拇指向左,直到轨道的左端默认被着色,以指示用拇指选择的值。

我要把它倒过来:从大拇指一直到右端的音轨都有这种颜色。

我已经被指明了风格的方向,但在了解了一些关于这些风格的东西之后,我仍然不完全理解如何为我的情况做这件事,我开始怀疑仅仅改变风格是否会奏效。

我把一个TTrackbar放在表单上,右键点击它,然后选择“编辑自定义样式”。我发现有一个由背景、TRectangle和突出显示组成的htrack,它是一个TStyleObject。作为一个TStyleObject,它通过SourceLookup和SourceLink链接到png文件中的一个区域。但现在我的智慧停止了。

  1. 怎么才能找到那个巴布亚新几内亚?
  2. 即使我找到了,下一步怎么办?我不想改变那个“突出显示”TStyleObject的外观,我想改变它的位置。我已经试图正确地锚定它,但这当然只是解决方案的一部分,因为运行时的宽度计算也需要“倒置”(1-x)。
EN

回答 1

Stack Overflow用户

发布于 2016-01-25 23:41:43

与其修改样式,不如考虑旋转轨迹栏。将属性RotationAngle设置为180,属性Value设置为与Max相同(如果您希望拇指最初位于左侧)。然后,在使用Value时计算它,例如:

代码语言:javascript
复制
procedure TForm21.TrackBar1Change(Sender: TObject);
begin
  Label1.Text := IntToStr(trunc((Sender as TTrackBar).Max -
                                (Sender as TTrackBar).Value));
end;

从视觉上看,如下所示:

评论后的编辑

结果表明,180°的旋转在真正的Android设备(至少在某些型号上不起作用)是行不通的,这是OP向Embarcadero质量门户( RSP-13156 )报告的。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35002967

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档