问题描述
过去效果很好。我有一个包含许多控件的表单,包括使用FireDAC连接到SQL数据库的TDBGrid
。其中有2个按钮,其中1个将在您按下按钮的同时播放.wav
文件,而1个将在1.5秒内播放.wav
文件。这是为了发出喇叭声。
如果按住喇叭按钮,将需要2秒钟以上的声音。如果按1.5秒按钮,则不会发出声音。
如果点击并按住按钮3-4次,然后按住,声音几乎立即发出,可以播放3声短促的冲击声或1.5声。点击步骤后,必须在1-2秒内按下声音按钮,否则延迟将返回。
void __fastcall TSjJudgeF::HornBtnKeyDown(TObject *Sender,WORD &Key,TShiftState Shift)
{
if (Key == 72)
{
//mp1->Notify = true;
mp1->Play();
}
}
void __fastcall TSjJudgeF::HornBtnKeyUp(TObject *Sender,TShiftState Shift)
{
mp1->Stop();
mp1->StartPos = 1;
}
通过按钮调用以获取特定的声音。
void __fastcall TSjJudgeF::AutoHorn(int Dur,int BRepeat)
{ //Dur= duration set 500ms BRepeat 3 for stop
for (int i=0; i<BRepeat; i++)
{
if (BRepeat < 2)
mp1->Wait = false;
else
mp1->Wait = true;
mp1->StartPos = 1;
mp1->EndPos = Dur;
mp1->Notify = false;
mp1->Play();
}// end for when fixed
}
声音已加载,除非有要求,否则不会改变。其他控件会不断变化。
有什么想法吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)