如何以编程方式在声音和静音模式之间切换?
[DllImport("KERNEL32.DLL")]
extern public static void Beep(int freq, int dur);
// and
Beep(2222, 55);
Beep(3333, 55);
我栽种了这个代码所做的哔哔声(哔(频率,硬脑膜))几乎在这里和那里hundread倍(与各种频率,时长和次数)。
现在,我想以编程方式在声音和静音之间切换。
我可以做的东西像
if (my_Flag)
{
Beep(2222, 55);
Beep(3333, 55);
}
应该是乏味的工作要做。 有没有更好的点子?
谢谢。
如果一切都定义为Beep(x,y)
方法,您可以编写自己的方法,然后重新编写 - >将所有方法重命名为MyBeep(x,y)
。
public void MyBeep(int freq, int dur)
{
if(myFlag)
Beep(freq, dur);
}
嗯,听起来不错。虽然看起来太空梭技术给我。好的,我会试试看。我是初学者,你可以很容易地知道我的问题。你的回答对我来说很珍贵。谢谢。 Tatranskymedved – Jason
没问题。 =) – Tatranskymedved
完美的作品!再次感谢。 – Jason
如果您在示例中使用了'幻数',那么您需要执行'繁琐的工作'。虽然在它,更好地定义一些GLOBAL变量,你可以在你的代码中以编程方式更改并使用它们来替换'魔术数字' – Steve
我怀疑有一种方法可以避免你单调乏味的工作,因为'嘟嘟声“方法,除了一个布尔值,表示它是否应该发出嘟嘟声,所以你必须自己检查一下。 – HimBromBeere
如果我是你,我会创建一个自己的(singleton class +)函数(int,int),它会调用Kernel32本身的嘟嘟声......然后你将会遇到更少的问题。从来没有,你不会有另一种方式,然后重构这个我猜... – TripleEEE