我想在我的应用程序中发出连续的哔声,直到被打断为止。
的方法
我尝试使用Console.beep(),但它只发出一次声音。
任何想法??
答案 0 :(得分:3)
正如您所知道的,此方法有更多构造函数...您可以指定它frequency
和duration
:
Console.Beep(100,10000);
您的案例的另一个建议是根据布尔变量循环它:
bool stop = false;
while (!stop)
{
Console.Beep();
}
答案 1 :(得分:1)
Console.Beep();
有两个参数,长度和音调。
使用如下:Console.Beep(tone_in_hz, length_in_milliseconds);
您还可以创建一个新线程和一个公共布尔值,然后运行while循环,如下所示:
private void Beeper()
{
while(makeBeepSound)
{
Console.Beep();
}
}
答案 2 :(得分:0)
试试这个
public void Beep()
{
if (MessageBox.Show("Message", "Alert", MessageBoxButtons.RetryCancel) == DialogResult.Retry)
{
Console.Beep(5000, 5000);
Beep();
}
}
在Form1加载事件
中 private void Form1_Load(object sender, EventArgs e)
{
Beep();
}
答案 3 :(得分:0)
将Beep()置于循环中并以新胎面开始。例如:
class Beeper
{
private int _gapMiliseconds;
private bool _stop = false;
public Beeper(int gapMiliseconds)
{
_gapMiliseconds = gapMiliseconds;
}
public void Start()
{
while (!_stop)
{
Console.Beep();
Thread.Sleep(_gapMiliseconds);
}
}
public void Stop()
{
_stop = true;
}
}
以及作为线程启动和停止它的代码。
Beeper beeper = new Beeper(100);
Thread thread = new Thread(new ThreadStart(beeper.Start));
thread.Start();
Thread.Sleep(5000);
beeper.Stop();