procedure TForm1.N12Click(Sender: TObject);
begin
if opendialog1.Execute then
begin
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
end;
end;
可是一旦选中一歌后,歌到没放,反而出现错误说‘no MCI device open’请问这是为什么?
还有个问题是我想通过一个suicheckbox来使播放的歌停止或继续,可是当我按一下suicheckbox时歌却不会停止,当我按第二下时,就会使系统用光内存,象死机一样了,请问这又是为什么??suicheckbox里的代码如下:
procedure TForm1.suiCheckBox1Click(Sender: TObject);
begin
if suicheckbox1.Checked=true then
begin
mediaplayer1.stop;
end else begin
mediaplayer1.Play;
end;
end;
注:我用的界面是suiform,会不会这个有影响,因为好象代码用在checkbox里面是没问题的。
22 个解决方案
#1
有人知道吗
#2
mediaplayer1.close;
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
#3
outer2000(天外流星) (好象仍然不行,老问题
#4
我以前尝试做一个mp3播放器的时候也遇到过,帮顶
#5
好象不用CLOSE 和STOP,在其他的地方写就没事了
#6
mediaplayer1.close;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
#7
难道就都没有什么办法吗???
#8
救命啊
#9
help
#10
我以前也遇到过,你打开要播入的文件了吗?还有路径对吗?这个问题就是设置错误!仔细检查一下,你就发现了
#11
对,我就是要打开的文件马上播放
我想路径用 mediaplayer1.FileName:=opendialog1.FileName;应该没问题吧
我想路径用 mediaplayer1.FileName:=opendialog1.FileName;应该没问题吧
#12
先把这个路径显示出来看一下呀,看行吗?
#13
有的时候少一个“\”也是不行的
#14
lianshaohua(永远深爱一个叫“然”的好女孩儿!)
路径显示是没问题的
路径显示是没问题的
#15
按照同样的方法再新建一个工程,看行吗?如果还是不行,把程序的那一部分发给我,我帮你改吧,
#16
email:class7class@163.com
发了后从QQ上通知我:270366978
发了后从QQ上通知我:270366978
#17
procedure TForm1.suiCheckBox1Click(Sender: TObject);
begin
if (suicheckbox1.Checked=true)and(mediaplayer1.mod=mpplayering) then
begin
mediaplayer1.stop;
end else begin
mediaplayer1.Play;
end;
end;
begin
if (suicheckbox1.Checked=true)and(mediaplayer1.mod=mpplayering) then
begin
mediaplayer1.stop;
end else begin
mediaplayer1.Play;
end;
end;
#18
它好像不是程序的错误
我在本机器上好使
在别人机器上就不好使
而且是有的好使,有的不好使
可能是开发环境不同
或者是有的dll没有注册
我在本机器上好使
在别人机器上就不好使
而且是有的好使,有的不好使
可能是开发环境不同
或者是有的dll没有注册
#19
是不是系统中的mediaplayer的版本不同?
#20
procedure TForm1.N12Click(Sender: TObject);
begin
if opendialog1.Execute then
begin
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
MediaPlayer1.DeviceType :=dtAutoSelect;//加上這一句看看;
mediaplayer1.Open;
mediaplayer1.Play;
end;
end;
begin
if opendialog1.Execute then
begin
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
MediaPlayer1.DeviceType :=dtAutoSelect;//加上這一句看看;
mediaplayer1.Open;
mediaplayer1.Play;
end;
end;
#21
mediaplayer1.close;
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
#22
是MEDIAPLAYER的BUG,一般是出错在指定的DeviceType :=dtAutoSelect之后,它是根据你文件的扩展名来播放的,如果你的扩展名搞错了,它就会出这样的提示,比如你把*.AVI的文件改成扩展名是MPG的文件,它肯定放不了,这个有点难,你得换了MEDIAPLAYER这个控件,拿VS6自带的控件装上去就解决问题了
#1
有人知道吗
#2
mediaplayer1.close;
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
#3
outer2000(天外流星) (好象仍然不行,老问题
#4
我以前尝试做一个mp3播放器的时候也遇到过,帮顶
#5
好象不用CLOSE 和STOP,在其他的地方写就没事了
#6
mediaplayer1.close;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
#7
难道就都没有什么办法吗???
#8
救命啊
#9
help
#10
我以前也遇到过,你打开要播入的文件了吗?还有路径对吗?这个问题就是设置错误!仔细检查一下,你就发现了
#11
对,我就是要打开的文件马上播放
我想路径用 mediaplayer1.FileName:=opendialog1.FileName;应该没问题吧
我想路径用 mediaplayer1.FileName:=opendialog1.FileName;应该没问题吧
#12
先把这个路径显示出来看一下呀,看行吗?
#13
有的时候少一个“\”也是不行的
#14
lianshaohua(永远深爱一个叫“然”的好女孩儿!)
路径显示是没问题的
路径显示是没问题的
#15
按照同样的方法再新建一个工程,看行吗?如果还是不行,把程序的那一部分发给我,我帮你改吧,
#16
email:class7class@163.com
发了后从QQ上通知我:270366978
发了后从QQ上通知我:270366978
#17
procedure TForm1.suiCheckBox1Click(Sender: TObject);
begin
if (suicheckbox1.Checked=true)and(mediaplayer1.mod=mpplayering) then
begin
mediaplayer1.stop;
end else begin
mediaplayer1.Play;
end;
end;
begin
if (suicheckbox1.Checked=true)and(mediaplayer1.mod=mpplayering) then
begin
mediaplayer1.stop;
end else begin
mediaplayer1.Play;
end;
end;
#18
它好像不是程序的错误
我在本机器上好使
在别人机器上就不好使
而且是有的好使,有的不好使
可能是开发环境不同
或者是有的dll没有注册
我在本机器上好使
在别人机器上就不好使
而且是有的好使,有的不好使
可能是开发环境不同
或者是有的dll没有注册
#19
是不是系统中的mediaplayer的版本不同?
#20
procedure TForm1.N12Click(Sender: TObject);
begin
if opendialog1.Execute then
begin
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
MediaPlayer1.DeviceType :=dtAutoSelect;//加上這一句看看;
mediaplayer1.Open;
mediaplayer1.Play;
end;
end;
begin
if opendialog1.Execute then
begin
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
MediaPlayer1.DeviceType :=dtAutoSelect;//加上這一句看看;
mediaplayer1.Open;
mediaplayer1.Play;
end;
end;
#21
mediaplayer1.close;
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
mediaplayer1.stop;
mediaplayer1.FileName:=opendialog1.FileName;
mediaplayer1.Open;
mediaplayer1.Play;
#22
是MEDIAPLAYER的BUG,一般是出错在指定的DeviceType :=dtAutoSelect之后,它是根据你文件的扩展名来播放的,如果你的扩展名搞错了,它就会出这样的提示,比如你把*.AVI的文件改成扩展名是MPG的文件,它肯定放不了,这个有点难,你得换了MEDIAPLAYER这个控件,拿VS6自带的控件装上去就解决问题了