社区
Delphi
帖子详情
调整声音大小
Eagle_Lone
2001-05-07 12:32:00
能用TrackBar或是ScrollBar什么的控制声音的大小吗?
...全文
901
7
打赏
收藏
调整声音大小
能用TrackBar或是ScrollBar什么的控制声音的大小吗?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lichp
2001-05-10
打赏
举报
回复
去Kingron.myetang.com下载Delphi猛料吧,有这个东东。还有很多的Delphi技巧哟
baby999
2001-05-09
打赏
举报
回复
高手给我的回复,送给你。有问题应该先查查以前的记录!
一、调节全部音量
1.先在窗体中添加一个trackbar控件,可通过改变它的位置来调节音量,在trackbar1的属性中,我们把Max属性修改成255,改成这个值是为了便于进行二进制的音量调节操作。
2.为了调用一个Windows函数,在uses子句里加上Mmsystem。
3.为trackbar1的Onchange事件编写如下代码:
procedure Tform1.TrackBar1change(Sender:Tobject);
var t,v:longint;// t的最大值为8位的二进制:11111111;用v来表示音量的大小,这是个32位的整数,高16位表示右声道的音量,低16位表示左声道的音量
begin
t:=trackbar1.Position;//得到Trackbar的位置,可用这个值来表示音量的大小
v:=(t shl 8) or (t shl 24);//将t左移8位、24位
waveoutsetvolume(0,v);//设置音量
end;
二、分别控制两个声道的方法
1.控制左声道
procedure Tform1.TrackBar1change(Sender:Tobject);
var t,v:longint;
begin
t:=trackbar1.Position;
waveoutgetvolume(0,@v);//@表示指向变量v的指针(32位),调用此函数的用意就是得到右声道的值,做到在调节左声道的时候,不改变右声道
v:=v and $ffff0000 or (t shl 8);//数字前面加$表示是十六进制数字
waveoutsetvolume(0,v);
end;
2.控制右声道
procedure Tform1.TrackBar2change(Sender:Tobject);
var t,v:longint;//它的原理同上
begin
t:=trackbar2.Position;
waveoutgetvolume(0,@v);
v:=v and $0000ffff or (t shl 24);
waveoutsetvolume(0,v);
end;
三、设置滑块的初始位置
1.程序开始执行时,缺省情况下,Trackbar的位置在0,但我们希望程序开始执行时,这两个滑块能自动得到当前的音量,而处在相应的位置。
procedure TForm1.FormCreate(Sender: TObject);
var v:longint;
begin
waveoutgetvolume(0,@v);//得到现在音量
trackbar1.Position:=hi(v);//设置左滑块的正确位置
trackbar2.Position:=hi(v shr 16);//设置右声道滑块的正确位置
end;
注:函数hi(v)的作用为:返回一个16位无符号整数的高8位值。如果v为32位,则高16位自动被忽略了。
2.只使用高8位时,可使调节效果更明显。
3.对波形文件可以用waveoutgetvolume函数,对cd文件可以用auxgetvolume函数。
注:以上程序均在Delphi 5.0,Windows 98SE下调试通过。}
Eagle_Lone
2001-05-09
打赏
举报
回复
能不能再详细点阿?
Eagle_Lone
2001-05-07
打赏
举报
回复
thank u ,and let's me try!!
Nicrosoft
2001-05-07
打赏
举报
回复
写程序做啊(呵呵,开个玩笑)
最佳方案是用mixer函数(msdn查一下,mixer打头的一套api),可以实现“音量控制”的全部功能!
Eagle_Lone
2001-05-07
打赏
举报
回复
怎么做呀?
Nicrosoft
2001-05-07
打赏
举报
回复
当然可以
电脑
声音
放大软件
笔记本
声音
太小?用它吧,很好的软件,用了1年了,感觉不错
调
声音
的BAT文件
调
声音
的BAT文件,单击就可以调节
声音
大小
。
调小
声音
的BAT文件
调小
声音
的BAT文件调小
声音
的BAT文件
报警
声音
大全__WAV
报警
声音
大全__WAV报警
声音
大全__WAV报警
声音
大全__WAV报警
声音
大全__WAV报警
声音
大全__WAV
.WAV格式。提示音
网上下载整理。实用提示音。 开始 结束 网上下载整理。实用提示音。 开始 结束
Delphi
5,927
社区成员
262,932
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章