声音控制
Video类中还有个属性Audio,专门用来控制音频的(其实就是前面提到的Audio类),控制音量就用它了。微软对音量的设置比较古怪,其取值范围是 -10000~0。如果音量控件的取值是0~100,那么可以使用此公式:value * 100 – 10000,控件最大值100对于音量的最大值0,控件最小值0对于音量最小值-10000。即静音状态下(快捷键设为Alt+M)设置音量为0,代码如下:
MyVideo.Audio.Volume = -10000;
当放大或缩小音量时则触发相应的时间,本程序中对音量控件的取值范围也是-10000~0,这样不用使用公式,编写代码更方便些,机器执行时也少了一道步骤。为了防止溢出(音量不能大于0或小于-10000),所以需要加控制条件。以放大音量为例,控制条件为:MyVideo.Audio.Volume <= -100 && movieSound <= 0,因为每次音量的增大量为100,所以音量的起始量必须小于-100时才能增加;还有音量必须小于等于音量的最大值0。放大音量的快捷键为Ctrl+up键,缩小为Ctrl+domn键。下面是放大音量时触发的事件的部分代码,缩小音量是个相反的过程,代码也非常相似,就不累述了。
关于实现声道的选择使用了SecondaryBuffer 类中的pan属性。此属性就是用来获取或设置声音的左声道或右声道,微软对左声道的值设为-10000,右声道为10000,正常情况为0。当值为Pan.Left时,意味着右声道是不活的的,值为Pan.Right时意味着左声道是不活的的,当值为Pan.Center时意味着左声道和右声道都满音量。
本程序中选择左声道时就会触发事件,就会对Pan赋值为-10000,选择右声道时对其赋值为为10000,选择正常时对其赋值为0。选择左声道时部分代码如下,右声道和正常的代码非常相似,不再累述。
本部分功能静音、放大音量、减小音量、声道调整都是出现在菜单项“播放”的下拉菜单中。
3.6 显示控制的实现
这块功能其实在第二节的第三小节就略有提及。其实在播放器载入文件时就首先判断该文件是视频格式还是音频格式,若是视频格式就会显示图像。至于调整播放窗口大小则需另行处理。
全屏按钮是一键双功能,即点击全屏按钮进入全屏或退出全屏。这在实现时需要首先判断视频是否在全屏状态下播放。这里使用FormBorderStyle 枚举和WindowState 枚举来实现这部分功能。FormBorderStyle指定窗体的边框样式,其成员None表示无边框,本文来自辣~文.论^文~网,加7位QQ324_9114找源文Sizable表示可调整大小的边框。WindowState指定是最小化、最大化还是还原窗口,其成员Normal表示还原窗口,Maximized表示最大化窗口。
www.751com.cn本程序实现全屏其实就是先把窗口最大化(Maximized),然后把窗口的边框(None)和窗口下面的按钮控制区隐藏起来。退出全屏则是把窗口还原(Normal),然后显示窗口的边框(None)和下面的按钮控制区。这部分功能在菜单项“显示”的下拉菜单中也有实现,实现过程和方法基本一致。进入全屏的快捷键为Ctrl+回车,退出全屏为Alt+回车。
通过课外提高农村中学生英语口语水平的方法其实在全屏状态下还有一个功能,就是当鼠标进入播放窗口按钮控制区时,显示出控制区,当鼠标离开控制区时控制区就隐藏起来。这部分很容易实现,在全屏状态下,按钮控制区是隐藏起来的(见上面代码controlPanel.Height = 1; ),鼠标进入控制区时也是只需要一行代码即可:controlPanel.Height = controlPanelHeight; 当鼠标离开控制区时就多了一道步骤:判断鼠标的位置是否已经脱离控制区。如果脱离,就隐藏控制区。
上一页 [1] [2] [3] [4] [5]
C#音乐播放器论文设计 第5页下载如图片无法显示或论文不完整,请联系qq752018766