登录
首页 » C#源码 » C# 键盘Ctrl+g控制蜂鸣器播放声音

C# 键盘Ctrl+g控制蜂鸣器播放声音

于 2022-05-23 发布 文件大小:5.65 kB
0 163
下载积分: 2 下载次数: 1

代码说明:

Visual C#播放声音,运行程序后,操作键盘上的Ctrl+g组合键发出蜂鸣声...这里的拖放声音是蜂鸣声,从音箱里发出,并不是从机箱的蜂鸣器发声。实现的过程和细节代码如下:   //导入 Windows Beep() API 函数   [DllImport("kernel32.dll")]   private static extern bool Beep(int freq, int dur);   // 定义PlaySound()要使用的常数   public const int SND_FILENAME = 0x00020000;   public const int SND_ASYNC = 0x0001;   // 导入 Windows PlaySound() 函数   [DllImport("winmm.dll")]   public static extern bool PlaySound(string pszSound,    int hmod,    int fdwSound);   [STAThread]   static void Main(string[] args)   {    // 使用Ctrl+g发出蜂鸣声    Console.Write("a");    Console.WriteLine("使用Ctrl+g发出蜂鸣声...");    Console.ReadLine();    // 使用 Windows API 发出蜂鸣声    Beep(800, 200);    Console.WriteLine("使用 Windows API 发出蜂鸣声...");    Console.ReadLine();    // 播放bells.wav文件    PlaySound("bells.wav",    0,    SND_FILENAME | SND_ASYNC);    Console.WriteLine("播放bells.wav文件...");    Console.ReadLine();   }

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • C# 使用互斥量禁止程序运行两个实例
    C# 使用互斥量禁止程序运行两个实例,这个主要是根据开发的程序使用环境决定,有时候一个程序运行多个副本,会浪费系统资源造成不稳定,但有人说这样会让软件使用更方便,以下代码是不让程序运行多个实例副本,关键代码如下所示:   private void Form1_Load(object sender, EventArgs e)   {//使用互斥量禁止程序运行两个实例    bool bExist;    var MyMutex =new System.Threading.Mutex(true, "OnlyOneTime", out bExist);    if (bExist)    MyMutex.ReleaseMutex();    else    {    MessageBox.Show("程序已经运行!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error);    this.Close();    }   }
    2022-03-24 02:20:34下载
    积分:1
  • C# 显示选择的DataGridView单元格行数据
    C# 显示选择的DataGridView单元格行数据附实现源码,连接数据库后,单击上部的“显示选择的单元格行”功能,即可显示出该行数据,具体的实现代码如下:   private void toolStripButton1_Click(object sender, EventArgs e)   {//显示选择的单元格行(获取DataGridView控件中选定的单元格行)   Int32 MyCount =customersDataGridView.Rows.GetRowCount(DataGridViewElementStates.Selected);   if (MyCount > 0)   {    System.Text.StringBuilder MyInfo = new System.Text.StringBuilder();    for (int i = 0; i < MyCount; i++)    {    MyInfo.Append("被选择的行号是: ");    MyInfo.Append(customersDataGridView.SelectedRows[i].Index.ToString());    MyInfo.Append(Environment.NewLine);    }    MyInfo.Append("一共选择了: " + MyCount.ToString()+"行。");    MessageBox.Show(MyInfo.ToString(), "信息提示",MessageBoxButtons.OK);   }   }
    2022-12-31 00:55:04下载
    积分:1
  • IFC文件解析,c#实现
    IFC文件解析,c#实现,实现了IFC文件解析并显示,提供给大家,希望对大家有用,好好学习,天天向上!!
    2022-03-14 12:28:15下载
    积分:1
  • C# 响应新增系统菜单项命令
    C# 制作的响应式菜单,响应新增系统菜单项命令,在标题栏单击鼠标右键,会显示出菜单,单击“新增菜单”会响应该菜单的点击,新增了一项自定义的菜单项及命令,实现过程如下:   protected override void WndProc(ref Message SystemMessage)   {//响应新增系统菜单项命令    switch (SystemMessage.Msg)    {    case WM_SYSCOMMAND:    if (((int)SystemMessage.WParam) == WM_USER + 2)    MessageBox.Show("响应新增系统菜单项命令", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);    else    base.WndProc(ref SystemMessage);    break;    default:    base.WndProc(ref SystemMessage);    break;    }   }
    2022-07-16 20:46:37下载
    积分:1
  • C# 以WrapWithOverflow方式、Wrap方式、NoWrap方式显示文字
    C#以三种方式显示文字,分别以WrapWithOverflow方式、Wrap方式、NoWrap方式将文字显示在窗口中,这三种方式实现的代码请看以下代码:   private void button1_Click(object sender, RoutedEventArgs e)   {//WrapWithOverflow方式    this.MyTextBlock.TextWrapping = System.Windows.TextWrapping.WrapWithOverflow;   }   private void button3_Click(object sender, RoutedEventArgs e)   {//Wrap方式    this.MyTextBlock.TextWrapping = System.Windows.TextWrapping.Wrap;   }   private void button2_Click(object sender, RoutedEventArgs e)   {//NoWrap方式    this.MyTextBlock.TextWrapping = System.Windows.TextWrapping.NoWrap;   }
    2022-01-25 20:43:04下载
    积分:1
  • C# 拖动分页功能实例
    C# 拖动分页功能实例,拖动窗口右下角的滑块,即可实现分页功能,字体会变大,和拖动改变字体大小有点相似。
    2022-08-19 21:12:20下载
    积分:1
  • C# AVG、SUM、COUNT、SqlHelper等函数用法示例
    本源码主要是一些C#数据库操作函数的示例,比如使用函数AVG计算数值字段平均值、使用函数SUM计算数值字段累加和   使用函数COUNT统计数据库记录数、使用SqlHelper查询数据库记录、使用SqlHelper获取聚合函数值、使用SqlHelper增加数据库记录等,每一个例子都有详细的源代码。   实现这些功能需要调用Microsoft.ApplicationBlocks.Data.dll,DataAccessApplicationBlock.msi已打包在源码包中。   程序运行效果如下图示,单击对应按钮即可查看对应的功能演示,测试前请先连接好数据库。
    2022-10-25 05:55:02下载
    积分:1
  • C# 通过SqlReader HasRows判断指定表中是否有数据
    本例主要是判断指定的数据库数据表中是否有数据,这里使用了通过判断HasRows的返回值来判断,若返回值为真,则有数据,反之则无数据,最后用MessageBox.Show显示判断结果,完整的过程:   //实例化SqlConnection变量conn   SqlConnection conn = new SqlConnection("server=.;database=db_14;uid=sa;pwd=");   conn.Open();//打开连接   //创建一个SqlCommand对象   SqlCommand cmd = new SqlCommand("select * from " + textBox1.Text.Trim(), conn);   //使用ExecuteReade方法创建SqlDataReader对象   SqlDataReader sdr = cmd.ExecuteReader();   sdr.Read();//调用Read方法读取SqlDataReade   if (sdr.HasRows)//使用HasRows属性判断结果中是否有数据   {    MessageBox.Show("数据表中有值");//弹出提示信息   }   else   {    MessageBox.Show("数据表中没有任何数据");   }
    2022-02-07 01:03:03下载
    积分:1
  • C# 是行提交方式插入、删除、更新数据库记录
    C# 是行提交方式插入、删除、更新数据库记录,本实例小程序主要演示了以行提交方式插入数据库记录、以行提交方式修改数据库记录、以行提交方式删除数据库记录、使用带有列值的Update()方法修改记录、使用带有列值的Delete()方法删除记录、使用带有列值的Insert()方法插入记录,对应的各个功能核心代码如下:   private void button2_Click(object sender, EventArgs e)   {//以行提交方式修改数据库记录(首先以添加新数据源方式新增NorthwindDataSet)    NorthwindDataSet.ShippersRow MyRow;    MyRow = this.northwindDataSet.Shippers.FindByShipperID(1);    MyRow.Phone = "13996060872";    this.shippersTableAdapter.Update(this.northwindDataSet.Shippers);   }      private void button4_Click(object sender, EventArgs e)   {//使用带有列值的Update()方法修改记录    NorthwindDataSetTableAdapters.ShippersTableAdapter MyAdapter =    new MyForm.NorthwindDataSetTableAdapters.ShippersTableAdapter();    MyAdapter.Update("Speedy Express", "13036371686", 1, "Speedy Express", "13996060872");    this.shippersTableAdapter.Fill(this.northwindDataSet.Shippers);   }   private void button3_Click(object sender, EventArgs e)   {//以行提交方式删除数据库记录(首先以添加新数据源方式新增NorthwindDataSet)    Northwi
    2023-02-24 10:00:04下载
    积分:1
  • 验证识别c#
    验证码识别c# 源码. 可以识别多重验证码。可以稍作修改识别更多的类型。已经使用过。可执行。 可以识别多重验证码。可以稍作修改识别更多的类型。已经使用过。可执行。
    2022-12-08 23:50:03下载
    积分:1
  • 696518资源总数
  • 105877会员总数
  • 14今日下载