首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TMediaPlayer.Position与TTrackBar.Position的LiveBindings同步

TMediaPlayer.Position与TTrackBar.Position的LiveBindings同步
EN

Stack Overflow用户
提问于 2016-03-31 19:03:50
回答 1查看 712关注 0票数 1

我有一个TTrackBar和一个TMediaPlayer,我正在寻找一种使用LiveBindigs功能根据TMediaPlayer位置更改TTrackBar位置的方法。

问题是,TMediaPlayer上没有事件可以监视TMediaPlayer.Position属性的更改,因此TMediaPlayer.Position不能同步。

是否可以在不触发事件的情况下监视组件属性的更改?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-01 20:54:03

不可能在没有适当事件的情况下监视某些属性的更改。

您也不希望将任何事件绑定到MediaPlayer.Position属性。为什么?

例如,当您正在播放视频时,每个帧的位置都会被更改,这意味着当使用30个FPS播放视频时,这样的事件将每秒触发30次。因此,根据该事件中的代码,它可以快速地将您的应用程序抓取。

所以我能给你的最好的建议是让你在你的表单上放置一个定时器,然后在一定的时间间隔内检查媒体播放器的位置来更新你的TrackBar。我相信一秒钟的间隔就足够了,但是如果你愿意的话,你可以缩短它。

只需确保如果您也使用TrackBar来寻找使用某些控制变量的能力,以查看TrackBar位置是由用户更新还是由您的计时器更新。其他的老虎钳你最终会结结巴巴的(第一次发生在我身上)。

至于仅用LiveBindings实现这一切,我认为这是不可能的。

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

https://stackoverflow.com/questions/36341600

复制
相关文章

相似问题

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