在继续执行之前完成播放声音
Finish playing a sound before continuing with execution
我试图让我的应用程序在关闭应用程序之前快速播放 .wav,但每次它只播放 .wav 而不会退出应用程序。这是我的代码:
bool condition = false;
if (condition)
{
SoundPlayer sndPlayer = new SoundPlayer(Project_Rage_v3._1.Properties.Resources.syl);
sndPlayer.Play();
}
else
{
Application.Exit();
}
我知道如果 bool == true 它将执行 if 函数,如果 bool == false 它将执行 else 函数。但是如果我不把它们分开,程序就会立即退出而不播放声音。
如何让它播放声音然后退出,但只在声音播放完后才退出?
删除 else 块。如果 condition
为真,您告诉程序播放声音,如果 condition
为假,则退出。按顺序放置命令并调用 PlaySync
而不是 Play
(MSDN)。这将阻止其余代码的执行,直到播放结束。
bool condition = false;
if (condition)
{
SoundPlayer sndPlayer = new SoundPlayer(Project_Rage_v3._1.Properties.Resources.syl);
sndPlayer.PlaySync();
Application.Exit();
}
我试图让我的应用程序在关闭应用程序之前快速播放 .wav,但每次它只播放 .wav 而不会退出应用程序。这是我的代码:
bool condition = false;
if (condition)
{
SoundPlayer sndPlayer = new SoundPlayer(Project_Rage_v3._1.Properties.Resources.syl);
sndPlayer.Play();
}
else
{
Application.Exit();
}
我知道如果 bool == true 它将执行 if 函数,如果 bool == false 它将执行 else 函数。但是如果我不把它们分开,程序就会立即退出而不播放声音。
如何让它播放声音然后退出,但只在声音播放完后才退出?
删除 else 块。如果 condition
为真,您告诉程序播放声音,如果 condition
为假,则退出。按顺序放置命令并调用 PlaySync
而不是 Play
(MSDN)。这将阻止其余代码的执行,直到播放结束。
bool condition = false;
if (condition)
{
SoundPlayer sndPlayer = new SoundPlayer(Project_Rage_v3._1.Properties.Resources.syl);
sndPlayer.PlaySync();
Application.Exit();
}