我想在應用程序中發出連續的嘟嘟聲直到中斷。
方法發出連續的嘟嘟聲,直到c中斷#
- 顯示與重試一個消息框,取消按鈕
- 製作蜂鳴繼續發聲,直到我按取消
- 如果按重試嗶聲不應該停止
我試過這個使用Console.beep(),但它只發出一次聲音。
任何想法??
我想在應用程序中發出連續的嘟嘟聲直到中斷。
方法發出連續的嘟嘟聲,直到c中斷#
我試過這個使用Console.beep(),但它只發出一次聲音。
任何想法??
如你所知,當然,這種方法有多個構造...你可以指定它的frequency
和duration
:
Console.Beep(100,10000);
爲你的情況另一個建議就是循環根據布爾變量是:
bool stop = false;
while (!stop)
{
Console.Beep();
}
@Jamiec 我曾試過這個,但第二個參數是有時間限制的,我的大四不滿意。他想繼續玩下去。 –
@GajendraRajput你的意思是永遠玩嗎? infinitly? – Slashy
點擊取消時應停止的種類。 –
Console.Beep();
有兩個參數,長度和音調。
使用這樣:Console.Beep(tone_in_hz, length_in_milliseconds);
您還可以創建一個新的線程和公共布爾,然後運行一個while循環,就像這樣:
private void Beeper()
{
while(makeBeepSound)
{
Console.Beep();
}
}
試試這個
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();
}
它沒有幫助。 –
將嘟嘟聲()放在一個循環中,並以新的方式啓動它。例如:
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();
您提供的解決方案沒有幫助 –
您的用戶將喜歡該功能。 – CodeCaster
你可以發表一些代碼嗎? – Marcus
這應該有所幫助:http://stackoverflow.com/questions/1195828/c-produce-a-continuous-tone-until-interrupted – ken2k