gpt4 book ai didi

delphi - 通过 LiveBindings 同步 TMediaPlayer.Position 和 TrackBar.Position

转载 作者:行者123 更新时间:2023-12-02 07:40:27 25 4
gpt4 key购买 nike

我有一个 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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com