关键字 flash+全屏+播放完毕+Activex 秋枫遇到难题 关于flash播放

「已注销」 2001-10-31 12:28:53
1、Activex控件播放的时候不能自动适应窗口 而且留有残影 很不爽

2、我没法知道flash的这一电影播放完了 即我没法实现连续播放一批列表

问题我在CSDN找了找 发现没有解决好的

只好拿来让弟兄们帮忙看看了


@_@
...全文
410 33 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
yiwei 2001-11-23
  • 打赏
  • 举报
回复
浏览器也很好阿
rh 2001-11-23
  • 打赏
  • 举报
回复
嘿嘿嘿嘿
叶老大,你那玩意我用不了啊!!
knf 2001-11-23
  • 打赏
  • 举报
回复
已阅
蚊子王 2001-11-23
  • 打赏
  • 举报
回复
Mark
Sephil 2001-11-23
  • 打赏
  • 举报
回复
这个东东就是不爽嘛!
「已注销」 2001-11-23
  • 打赏
  • 举报
回复
晕…………

我正好结账不成功

乐乐

有你的份 不过等明天我再试吧

到时候我再多加点
wangledong 2001-11-23
  • 打赏
  • 举报
回复
啊!来晚了!
「已注销」 2001-11-23
  • 打赏
  • 举报
回复
结账
yushaofeng 2001-11-10
  • 打赏
  • 举报
回复
很热闹,帮叶老大UP一把
rh 2001-11-10
  • 打赏
  • 举报
回复
faint……你高:)
「已注销」 2001-11-10
  • 打赏
  • 举报
回复
我解决的办法太…………

我是用浏览器解决的

脸红了……

@_@
rh 2001-11-10
  • 打赏
  • 举报
回复
精彩?随手写出的破烂代码,bug多多……
精彩个P才是真。老叶你也太给面子了:)
duduwolf 2001-11-09
  • 打赏
  • 举报
回复
叶老大怎么解决的?贴出来哦!!
「已注销」 2001-11-09
  • 打赏
  • 举报
回复
先提前一下

我当然已经解决了

让朋友们提提意见

rh说的很精彩

@_@
rh 2001-11-06
  • 打赏
  • 举报
回复
很好!解决了!切~我为什么就没有想到试一下呢:)
但是,虽然没有闪烁,当尺寸改变时,刷新还是有些延迟
也就是说,在拉窗体的边沿连续改变大小时,画面可能会花
不过比我的傻瓜方法好太多了:)

注:我的机器:cii566 + 320M + win2000 + flash5
Spring414 2001-11-06
  • 打赏
  • 举报
回复
第一个问题可以这样:

ShockwaveFlash的Align=alClient;

添加一个TEdit或其他可得到焦点的控件。

在Form或是他的父亲的Resize事件里
Edit1->SetFocus();
ShockwaveFlash1->SetFocus();

rh 2001-11-06
  • 打赏
  • 举报
回复
奶奶的,“祯(zhen)”是错的,应该是:“帧(zheng)”字。xixi~~没有办法,普通话差也。
rh 2001-11-06
  • 打赏
  • 举报
回复
我今天晚上写的小测试代码:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "main.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "ShockwaveFlashObjects_OCX"
#pragma resource "*.dfm"
TMainForm *MainForm;
//---------------------------------------------------------------------------
__fastcall TMainForm::TMainForm(TComponent* Owner)
: TForm(Owner)
{
//FlashPlayer->AlignMode = 0;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::PlaySBtnClick(TObject *Sender)
{
if(FlashPlayer->IsPlaying())return;

FlashPlayer->Play();
Timer->Enabled = true;
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::StopSBtnClick(TObject *Sender)
{
if(FlashPlayer->IsPlaying()){
FlashPlayer->Stop();
Timer->Enabled = false;
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::ForwardSBtnClick(TObject *Sender)
{
FlashPlayer->Forward();
Timer->Enabled = true;
FlashPlayer->Play();
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::BackSBtnClick(TObject *Sender)
{
FlashPlayer->Back();
Timer->Enabled = true;
FlashPlayer->Play();
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::RewindSBtnClick(TObject *Sender)
{
FlashPlayer->Rewind();
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::OpenSBtnClick(TObject *Sender)
{
if(OpenDialog->Execute()){
FlashPlayer->Stop();
FlashPlayer->Movie = WideString(OpenDialog->FileName);
Timer->Enabled = true;
FlashPlayer->Play();
//FlashPlayer->LoadMovie(1,WideString(OpenDialog->FileName));
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::SpeedButton1Click(TObject *Sender)
{
AnsiString Frame;
if(InputQuery(Application->Title, "请输入你想跳转的祯数",Frame)){
FlashPlayer->GotoFrame(StrToInt(Frame));
Timer->Enabled = true;
}
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::PlayPanelResize(TObject *Sender)
{
FlashPlayer->Left = PlayPanel->Left + 1;
FlashPlayer->Top = PlayPanel->Top + 1;
FlashPlayer->Width = PlayPanel->Width - 2;
FlashPlayer->Height = PlayPanel->Height -2;
FlashPlayer->Hide();
FlashPlayer->Show();
FlashPlayer->SetFocus();
}
//---------------------------------------------------------------------------
void __fastcall TMainForm::TimerTimer(TObject *Sender)
{
ProgressText->Caption = "当前播放进度:" + IntToStr(FlashPlayer->FrameNum + 1) + " / "
+ IntToStr(FlashPlayer->TotalFrames);
if(FlashPlayer->FrameNum + 1==FlashPlayer->TotalFrames);

}
//---------------------------------------------------------------------------



时间有限,bug多多,你自己看着修改吧:)嘿嘿~~~~
rh 2001-11-06
  • 打赏
  • 举报
回复
不好意思!最近忙得他奶奶的不得了,呵呵,而且,我觉得,我没有能解决你的问题也!
真的,你的要求我可以勉强实现,但是效果不好:—)绝对有更好的方法:)

我是这样做的:
1 关于知道播放完毕:
void __fastcall TMainForm::TimerTimer(TObject *Sender)
{
ProgressText->Caption = "当前播放进度:" + IntToStr(FlashPlayer->FrameNum + 1) + " / "
+ IntToStr(FlashPlayer->TotalFrames);
if(FlashPlayer->FrameNum + 1==FlashPlayer->TotalFrames);//播放完毕是也
}

2 关于调整大小,有明显的闪烁感:
//---------------------------------------------------------------------------
void __fastcall TMainForm::PlayPanelResize(TObject *Sender)//PlayPanel是其parent
{
FlashPlayer->Left = PlayPanel->Left + 1;
FlashPlayer->Top = PlayPanel->Top + 1;
FlashPlayer->Width = PlayPanel->Width - 2;
FlashPlayer->Height = PlayPanel->Height -2;
FlashPlayer->Hide();
FlashPlayer->Show();
FlashPlayer->SetFocus();//这句一定要,没有办法,我只找到这笨蛋办法:(~~~~~~~
}
//---------------------------------------------------------------------------
「已注销」 2001-11-02
  • 打赏
  • 举报
回复
to : max_wzg(暴走-银狼) 

建议您试试 自动适应刚开始的确可以 但你一修改窗口大小 就坏了菜了……


to 凡高

好地


to 老r

再加上180分 如何
加载更多回复(13)

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧