社区
C++ Builder
帖子详情
怎样判断MediaPlayer控件播放声音时的位置?
yg2000
2001-07-30 04:25:38
例如:(MediaPlayer->Position=结束时的代码怎样写?)
...全文
134
13
打赏
收藏
怎样判断MediaPlayer控件播放声音时的位置?
例如:(MediaPlayer->Position=结束时的代码怎样写?)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yg2000
2001-08-04
打赏
举报
回复
MediaPlayer这个控件不知怎么啦!!!不但没有进度条也没有判断结束的代码可写,同时ModeChange事件也没有,把MediaPlayer事件放在FormCreate下通不过,在FormActivate和FormShoow事件下能自动播,但只做一次了事,第二个条件不再执行了;放在TimerTimer下却能运行但声音不正常,时钟和播放器冲突。我在VB3.0下用MCIWnd控件都做成了英语单词自动播放了。谁能举例说明一下,我会另加 分分分分 的。
下面一段代码帮我看一下怎么实现。
播放wav和Avi用MediaPlayer
播放midi用mci,代码如下:
打开设备: //代码放什么地方?写到FormOnCreate上,运行时在下面的 "MCIERROR mciError;"上通不过。
MCIERROR mciError;
char outBuf[100];
AnsiString Cmd="open ";
Cmd=Cmd+File+ " type sequencer alias "+Alias; //"type sequencer alias "怎么用
// File:midi文件
mciError=mciSendString(
Cmd.c_str(),outBuf,sizeof(outBuf),File);
if(mciError)
{
mciGetErrorString(mciError,outBuf,sizeof(outBuf));
Application->MessageBox(outBuf,"错误",
MB_SYSTEMMODAL+MB_OK+ MB_ICONSTOP);
}
播放midi://是写到控件上的单击事件上吧?或写到FormOnCreate上吧?
AnsiString Cmd="play ";
Cmd=Cmd+" "+Alias+" notify"; //怎么用"Alias"?我写上文件也不好使。
HWND hWnd=Application->Handle;
MCIERROR mciError=mciSendString(Cmd.c_str(),NULL,0,hWnd);
if(mciError)
{
char Buf[100];
mciGetErrorString(mciError,Buf,sizeof(Buf));
Application->MessageBox(Buf,"错误",
MB_SYSTEMMODAL+MB_OK+ MB_ICONSTOP);
}
luhongjun
2001-08-03
打赏
举报
回复
使用MCI:例如
播放wav用playsound
播放midi用mci,如下
打开设备
MCIERROR mciError;
char outBuf[100];
AnsiString Cmd="open ";
Cmd=Cmd+File+ " type sequencer alias "+Alias;
// File:midi文件
mciError=mciSendString(
Cmd.c_str(),outBuf,sizeof(outBuf),File);
if(mciError)
{
mciGetErrorString(mciError,outBuf,sizeof(outBuf));
Application->MessageBox(outBuf,"错误",
MB_SYSTEMMODAL+MB_OK+ MB_ICONSTOP);
}
播放midi
AnsiString Cmd="play ";
Cmd=Cmd+" "+Alias+" notify";
HWND hWnd=Application->Handle;
MCIERROR mciError=mciSendString(Cmd.c_str(),NULL,0,hWnd);
if(mciError)
{
char Buf[100];
mciGetErrorString(mciError,Buf,sizeof(Buf));
Application->MessageBox(Buf,"错误",
MB_SYSTEMMODAL+MB_OK+ MB_ICONSTOP);
}
停止播放
MCIERROR mciError;
AnsiString Cmd="stop ";
Cmd=Cmd+Alias;
mciError=mciSendString(Cmd.c_str(),NULL,0,NULL);
if(mciError)
{
char Buf[100];
mciGetErrorString(mciError,Buf,sizeof(Buf));
Application->MessageBox(Buf,"错误",
MB_SYSTEMMODAL+MB_OK+ MB_ICONSTOP);
}
关闭设备
AnsiString Cmd="close ";
Cmd=Cmd+Alias;
mciSendString(Cmd.c_str(),NULL,0,NULL);
路人丁
2001-08-01
打赏
举报
回复
激活和显示的概念是不一样的!
路人丁
2001-08-01
打赏
举报
回复
你写在FormActivate下岂不是每次窗体被激活都要重新播放?
路人丁
2001-08-01
打赏
举报
回复
你把程序写在窗体OnShow()事件下!
yg2000
2001-08-01
打赏
举报
回复
ddeng(登登)你好!! 你说__哪来的MediaPlayer->Close();??? __我的程序一运行,只要符合条件就会播放音乐的,但播放完后应该自行关闭才好呀。
yg2000
2001-08-01
打赏
举报
回复
ddeng(登登) 和 dingzhenhhy(人言落日是天涯,望及天涯不见家(快疯了) 你们好!!看来只能处处设防了(关闭子窗体或退出应用程序时都得先让主窗体上的MediaPlayer->Close();了,否则关闭子窗体时会重播的(因为我的程序是写在FormActivate下,写在FormCreate下通不过),而关闭主窗体时会死机的。
用MediaPlayer->EndPos也不好用。象 VB3 中的MCI控件它有播放位置显示条,在BCB里我一直没找到写播放位置的例子。
yushaofeng
2001-08-01
打赏
举报
回复
我也想知道?
路人丁
2001-08-01
打赏
举报
回复
你把关闭MedioPlayer代码写在OnCloseQuery()中
yg2000
2001-08-01
打赏
举报
回复
我的软件是象东方快车一样总浮在窗体顶上,或其它三边。打开Windows后就浮在窗体顶上,根据
我的初始化设置自动进行播音,当我要关闭时,输入密码先关闭MedioPlayer播放器再退出程序。
你说:“你写在FormActivate下岂不是每次窗体被激活都要重新播放? ”是的,但只好先关播放器再关某一窗体了。看来还是个难题,慢慢来了。
路人丁
2001-07-31
打赏
举报
回复
呵呵我又来了~!
你是想随时关闭媒体播放器?
ddeng
2001-07-31
打赏
举报
回复
可能能用MediaPlayer->EndPos,不过哪来的MediaPlayer->Close();???
yg2000
2001-07-31
打赏
举报
回复
我不知道是否题难还分少?怎么没人进来呀!!!!!!!我现在只好用别的办法来解决它了。
如果我能知道 if( MediaPlayer->Position=结束) 就可随时及时直接让 MediaPlayer->Close(); 那该多好呀!!
MediaPlayer
控件
属性描述
MediaPlayer
控件
属性描述 属性 描述 AllowChangeDisplaySize 返回或设置最终用户是否能设置显示尺寸(逻辑型) AllowScan 返回或设置是否允许扫描(逻辑型) AnimationAtStart 返回或设置
控件
开始
播放
之前是否先
播放
一...
视频
播放
器 IJKplayer、ExoPlayer、
MediaPlayer
视频
播放
器(IJKplayer、ExoPlayer、
MediaPlayer
),HTTPS支持,支持弹幕,支持滤镜、水印、gif截图,片头广告、中间广告,多个同
时
播放
,支持基本的拖动,
声音
、亮度调节,支持边播边缓存,支持视频本身自带...
Android的音频与视频应用程序设计PPT
(1)熟悉Android中
播放
声音
的主要类SoundPool和
MediaPlayer
(2)熟悉Android中
播放
视频的主要类VideoView和SurfaceView (3)学会使用SoundPool类
播放
音频 (4)学会使用
MediaPlayer
类
播放
本地音频和网络音频 (5...
vc实例精通源码,windows基本
控件
的使用Demo
09_AutoSizeEx 多个
控件
改变大小
时
防止闪烁。 10_LimitSize 限制窗体的最大和最小尺寸。 11_AutoPos 让窗体具有停靠效果。 12_EnumWnd 枚举系统中的窗口。 第5章(\ Chapter05) 示例描述:本章介绍...
支持IJKPlayer、Media3(EXOPlayer2),
MediaPlayer
、AliPlayer实现了多功能的视频
播放
器
视频
播放
器(IJKplayer、ExoPlayer、
MediaPlayer
),HTTPS支持,支持弹幕,支持滤镜、水印、gif截图,片头广告、中间广告,多个同
时
播放
,支持基本的拖动,
声音
、亮度调节,支持边播边缓存,支持视频本身自带...
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章