Field,这样就创建了对应的字段变 量,利用它们就可以动态地向相应字段中存入多媒体数据了(如果数据表 example1.db不存在,应该选择“New Fields……”菜单 命令创建,这样做必须创建所有的字段,较为麻烦)。
3. 代码设计
“打开数据库”按钮的OnClick事件过程代码如下: void __fastcall TForm1::Button1Click(TObject *Sender)
{ Table1->DatabaseName = “e:\\mydata”;
Table1->TableName = “example1.db”;
Table1- >Active = true; //打开数据表
}
在“增加 记录”按钮的OnClick的事件过程中输入代码: void __fastcall TForm1::Button2Click(TObject *Sender)
{ Table1->DatabaseName = “e:\\mydata”;
Table1->TableName = “example1.db”;
Table1- >Active = true;
Table1->AppendRecord(OPENARRAY(TVarRec ,(“20010521”,“刘德友”)));
//增加一 条记录
Table1->Edit( ); //进入编辑状态
Table1BMPField->LoadFromFile(“\\media\\ldy.bmp”);
//将图片文件载入像片字段
Table1WAVField- >LoadFromFile(“\\media\\ldy.wav”);
//将声音文 件载入声音字段
Table1AVIField->LoadFromFile (“\\media\\ldy.avi”);
//将电影文件载入活动影像字 段
Table1->AppendRecord(OPENARRAY(TVarRec, (“20010522”,“王英”)));
//增加第二条 记录
Table1->Edit( );
Table1BMPField- >LoadFromFile(“\\media\\wy.bmp”);
Table1WAVField->LoadFromFile(“\\media\\wy.wav”);
Table1AVIField->LoadFromFile (“\\media\\wy.avi”);
Table1->AppendRecord (OPENARRAY(TVarRec,(“20010523”,“张雪花 ”)));
//添加第三条记录
Table1->Edit( );
Table1BMPField->LoadFromFile (“\\media\\zxh.bmp”);
Table1WAVField- >LoadFromFile(“\\media\\zxh.wav”);
Table1AVIField->LoadFromFile(“\\media\\zxh.avi”);
}
用类似的语句可以添加多条记录。显然,若需要其他格 式的多媒体数据文件也可用此法,作为二进制文件将其存入数据库。如果利用 TOpenDialog组件则能够在运行过程中实现“动态”加载多媒体数据文 件到相应字段。
按钮“听听声”的OnClick事件过程的代码如 下: void __fastcall TForm1::Button3Click(TObject *Sender)
{ AnsiString waveName = “temp.wav”;
Table1WAVField-> SaveToFile(waveName);
//存成临时文件
Sleep(50); //作为缓冲,暂停50毫秒
MediaPlayer1->FileName = waveName;
MediaPlayer1->Open();
MediaPlayer1->Play();
}
按钮“看看影”的OnClick事件过程的代码如下:
void __fastcall TForm1::Button4Click(TObject *Sender)
{ AnsiString aviName = “temp.avi”;
Table1AVIField->SaveToFile(aviName);
Sleep(50);
OleContainer1->CreateLinkToFile(aviName,false);
OleContainer1->DoVerb(ovPrimary);
}
注意这 里使用TOleContainer1组件实现AVI播放,当然也可以用MediaPlayer1组件进行播 放,此处只是提供了一种方法:利用软件的OLE技术对一些特殊格式的多媒体数据 文件采用TOleContainer处理,例如DOC、PSD、DWG、SWF等,只要目标计算机安装 了该软件的服务程序(想知道计算机支持哪些格式媒体文件只要在Word软件中查 看“ |