- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 TTrackBar 和一个 TMediaPlayer,我正在寻找一种使用 LiveBindigs 功能根据 TMediaPlayer 位置更改 TTrackBar 位置的方法。
问题是,TMediaPlayer上没有事件来观察TMediaPlayer.Position
属性的变化,所以我的TTrackBar.Position
无法同步。
是否可以在不触发事件的情况下观察组件属性的变化?
最佳答案
如果没有合适的事件,就不可能监视某些属性的变化。
并且您也不希望将任何事件绑定(bind)到 MediaPlayer.Position 属性。为什么?
例如,当您播放视频时,每一帧的位置都会发生变化,这意味着当播放 30 FPS 的视频时,此类事件每秒会触发 30 次。因此,根据该事件中的代码,它可能会很快使您的应用程序陷入困境。
因此,我可以给您的最佳建议是在表单上放置一个计时器,然后以一定的时间间隔检查媒体播放器的位置以更新您的 TrackBar。我相信一秒的间隔就足够了,但如果你愿意,你可以缩短它。
只要确保您是否也使用 TrackBar 来寻求使用某些控制变量来查看 TrackBar 位置是否由用户或计时器更新的能力。其他虎钳你最终会出现奇怪的口吃(第一次发生在我身上)。
至于仅通过 LiveBindings 实现这一切,我认为这是不可能的。
关于delphi - 通过 LiveBindings 同步 TMediaPlayer.Position 和 TrackBar.Position,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36341600/
我不明白 LiveBinding 的目的。我想知道LiveBinding在哪些情况下最有值(value)。 Embarcadero 的手册对此进行了描述:“LiveBindings 是 RAD Stu
在 Delphi XE2 LiveBindings 中,我需要将任何类型的 VCL 控件绑定(bind)到任意(非组件)对象上的任何类型的属性。我可以单向地做到这一点。但我需要双向进行。 假设我想将
我正在开发我的第一个适用于 Windows 和 MacOSX 的多平台应用程序。我决定使用 SQLite 和 StringGrid 来检查连接性。通过查看 Delphi 10.0 附带的 SQLite
我刚刚发现了 Delphi 的实时绑定(bind)。并创建了我的第一个组件来处理变频器的控制字。该组件本身似乎在表单设计器中测试它效果很好。但是,编译和运行应用程序不起作用。来自 livbinding
我一直在尝试找到一种通用方法来通知 UI 控件列表中的更改。例如,当一个对象添加到列表中时,我希望它自动添加到列表框中。如果从列表中删除一个对象,我希望它自动从列表框中删除。 不幸的是,Delphi
是否可以在控件之间进行 LiveBinding,即获取 2 个编辑框并将其内容添加到一个标签中。我确信是这样,我只是不知道从哪里开始 谢谢 最佳答案 查看示例。 SVN 存储库 URL:https:/
我有一个包含两个组合框的表单,两个组合框都包含相同的项目列表,并且需要彼此保持完美同步。 (它们代表 TPageControl 的两个不同选项卡上的相同选项列表。) 为了实现此目的,我设置了一个 Li
我的目标是拥有一个包含多个列的 TGrid,通过 LiveBindings 连接到 TClientDataSet。其中一列的类型为 TProgressColumn。 网格显示数据,但进度栏列不显示任何
我正在尝试使用 LiveBindings 来格式化数字,以便在 FireMonkey 表单上的 TEdit 中显示。 我正在尝试使用绑定(bind)的 CustomFormat 中的 Format 方
这是事实还是它使用了一些仅在 XE2 中可用的编译器技术? 我只想将 TEdit.Text 属性绑定(bind)(双向)到在代码中返回字符串的对象函数(我不需要设计器组件或表达式求值器).. 谢谢!
我有一个 TDataSource,它由绑定(bind)到 TStringGrid 的 TClientDataset 支持。我通过右键单击网格,选择“链接到数据库数据源...”,然后选择数据源来完成此操
我有以下示例代码集,如何使用 LiveBindings 将 Data 列表元素绑定(bind)到 TStringGrid。我需要双向更新,以便当网格中的列发生更改时,它可以更新底层 TPerson。
我的软件很大程度上基于 Firemonkey TListView,它是根据 Delphi Samples 项目中的“SampleListViewMultiDetailAppearanceProject
我想指定 LinkControlToDate.CustomFormat := 'IfThen(%s=0, '''', FormatDateTime(''ddddd'', %s))' 用于 TLinkC
我正在使用带有 SP1 的 Delphi XE3。我创建了一个 FireMonkey 桌面应用程序,并在主窗体上放置了 TSpinBox 和 TTrackBar。我现在已经使用 Visual Live
我有一个 TTrackBar 和一个 TMediaPlayer,我正在寻找一种使用 LiveBindigs 功能根据 TMediaPlayer 位置更改 TTrackBar 位置的方法。 问题是,TM
我正在设计自己的 Delphi XE5 自定义网格。我对 VCL 不感兴趣,所以我只使用 FireMonkey。由于它必须具有数据感知能力,因此 LiveBindings 是必须的。这项任务很复杂,所
我是一名优秀的程序员,十分优秀!