我想用c#中的trackbar控件来实现音量的控制,应该怎么写代码?在线等大神。谢谢

 我来答
阳光的雷咩咩
2014-01-03 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7813万
展开全部
    public partial class Form1 : Form
    {
        [DllImport("winmm.dll")]
        internal static extern int waveOutGetVolume(IntPtr hwo, out uint dwVolume);
        [DllImport("winmm.dll")]
        internal static extern int waveOutSetVolume(IntPtr hwo, uint dwVolume);
        public Form1()
        {
            InitializeComponent();
        }

        private void trackBar1_Scroll(object sender, EventArgs e)
        {
            uint currV = ushort.MaxValue / 2;
            waveOutGetVolume(IntPtr.Zero, out currV);
            ushort calcV = (ushort)(currV & 0x0000ffff);
            int newV = ((ushort.MaxValue / 100) * trackBar1.Value);
            uint newVol = (((uint)newV & 0x0000ffff) | ((uint)newV << 16));
            waveOutSetVolume(IntPtr.Zero, newVol);
            //下面这句是为了显示调整百分比
            Text = Convert.ToString("Volume: " + trackBar1.Value + "%");
        }
    }
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式