:( --- delphi中做RealPlayer,播放rm文件的问题!请帮帮忙 (200大洋啊) (200分)

  • 主题发起人 白衣书生
  • 开始时间

白衣书生

Unregistered / Unconfirmed
GUEST, unregistred user!
:(
我在delphi中安装了 System/rmoc3260.dll,已经生成了RealAudio的ActiveX控件!
但是这个控件怎样使用?

有那位能说一下这个控件的常用“属性”和“方法”? 还有分可送
请大家帮帮忙,有没有代码可供共享的?

比如:怎样得到你要播放的文件? 将文件名赋给 RealAudio 的那个属性?
RealAudio属性中我找不到用那个?
是用GetSource吗?
我找了半天帮助没有找到! 这个控件的使用还需要其他辅助控件吗?
我搜索了以前的,也没有发现答案啊!

help me!

提前者有分!
 
我来捡分。
 
RM格式的播放器

随着网络的日益普及,RM(Real Media)格式的多媒体文件由于压缩比高而受到世界范围的认同和欢迎。安装完RealPlayer之后,系统中将会被加入一个播放RM格式的ActiveX控件,我们就是利用这个控件来实现RM格式文件的播放。
1、安装ActiveX控件
点击Component菜单下的Import ActiveX Control选项,就会出现一个现在可安装的控件列表,如果你已经安装了RealPlayer的话,选中RealPlayer ActiveX Control Librarry然后按Install键即可 。在出现了许多确认信息之后,一个名为RealAudio的ActiveX控件就装入了你的Delphi之中。
2、学习控件的使用
打开目录/Delphi5/Imports/,找到RealAudioObjects_TLB.pas文件并打开,这里面包含了控件全部的操作函数、过程及属性。以下是对几个常用的函数和过程的简要介绍:
SetSource(文件路径):设置索要播放的文件的完整路径;
DoPlay:播放;
DoPlayPause:暂停;
DoStop:停止;
SetControls():设置播放面板显示情况,具体的使用方法后面介绍;
SetFullScreen:设置全屏播放;
SetMute(True/False):设置静音;
其他功能详见RealAudioObjects_TLB.pas。
3、播放器的制作
点击File/New Application,创建一个新的窗体;
在窗体上加载RealAudio控件,设置属性Visable为False;
在窗体上再分别加上OpenDialog控件和5个Button控件,并设置Button控件的Caption属性分别为“打开”、“播放”、“暂停”、“停止”、“全屏”;(见附图1)
输入如下代码:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, OleCtrls, RealAudioObjects_TLB;

type
TForm1 = class(TForm)
RealAudio1: TRealAudio;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
OpenDialog1: TOpenDialog;
Button5: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
if form1.OpenDialog1.Execute then
form1.RealAudio1.SetSource(form1.OpenDialog1.FileName);
end; //打开

procedure TForm1.Button2Click(Sender: TObject);
begin
form1.RealAudio1.DoPlay;
end; //播放

procedure TForm1.Button3Click(Sender: TObject);
begin
form1.RealAudio1.DoPlayPause;
end; //暂停 点击1次则暂停,点击2次则恢复播放

procedure TForm1.Button4Click(Sender: TObject);
begin
form1.RealAudio1.DoStop;
end; //停止

procedure TForm1.Button5Click(Sender: TObject);
begin
form1.RealAudio1.SetFullScreen;
end; //设置全屏

end.
运行程序后发现了什么问题?播放器只能播放声音而没有图像!此时就要用到刚才所提到的SetControls函数。
当SetControls函数在程序中没有被调用时,是没有图像窗口的。SetControls函数后可带多个参数,主要有:ImageWindow(图像窗口),ControlPanel(控制板),StatusBar(状态条)用于设置控件面板上应显示的构件。
例如:SetControls('ImageWindow');
在procedure TForm1.Button1Click(Sender: TObject);(打开过程)中加入如下代码:

procedure TForm1.Button1Click(Sender: TObject);
begin
if form1.OpenDialog1.Execute then begin
form1.RealAudio1.SetSource(form1.OpenDialog1.FileName); form1.RealAudio1.DoPlay; //打开后自动播放
form1.RealAudio1.SetControls('ImageWindow'); //设置图像窗口显示
form1.RealAudio1.Visible:=True; //显示图像窗口
end;
end;

这样就实现了影像的播放功能。
用自己制作的播放器播放RM节目感觉如何?如果你有兴趣,还可以开发出更多更好的播放器!

 
to gxcooo:
谢谢~

我这就去试试!
-----------------
请后来者继续~
提前有分啊 ~ :D
 
很荣幸的告诉你,搞定了! 最起码影音都出来了! :D
送分! 呵呵~

gxcooo :180
lql0459 :10
zhumoo :10

看看 我说up 就有分 结果就来了俩人! 唉!~
 
结帖了!
 

Similar threads

顶部