快速业务通道

C++ Builder操纵多媒体数据库

作者 佚名技术 来源 程序设计 浏览 发布时间 2012-06-29
插入——>对象……”菜单便知), 笔者利用此技术成功地实现了Flas*****存储和播放(已装有Flash 5)。当然也 可使用第三方开发的组件或控件,C++ Builder也支持OCX控件,例如利用MP3Play 控件实现MP3的播放。

至此,一个小型的多媒体数据库系统用“集成 法”创建完成。

分离法

这种方法就是将多媒体数据与数据库 分开存放。在数据库中相应的字符字段只存放该多媒体数据的文件名,它是数据 库与数据之间的“接口”。这种情况下数据库结构可以在运行中动态 创建,因此可在功能界面上(功能界面上的其他部分与图1完全相同)再增加一个 按钮“创建数据库结构”并在其OnClick事件过程置入如下代码: void __fastcall TForm1::Button5Click(TObject *Sender)

{ TTable *newTable = new TTable(this);

newTable->Active = false;

newTable->DatabaseName =“e:\\mydata”;

newTable->TableName = “example2.db”;

newTable->TableType = ttParadox;

newTable->FieldDefs->Clear();

newTable->FieldDefs->Add(“编号”,ftString,8, false);

//字段均为字符型

newTable->FieldDefs- >Add(“姓名”,ftString,8,false);

newTable- >FieldDefs->Add(“像片”,ftString,12,false);

newTable->FieldDefs->Add(“声音”,ftString,12 ,false);

newTable->FieldDefs->Add(“活动影像 ”,ftString,12,false);

newTable->CreateTable ();

delete newTable;

}

由于允许动态 创建库结构,组件Table1的DatabaseName属性和DBEdit1、DBEdit2的DataField属 性用代码进行设置。因为“像片”字段存放的只是其文件名,所以组 件DBImage1用Image1组件代替。这时,只需将“打开数据库”按钮的 OnClick事件过程修改为:

void __fastcall TForm1::Button1Click(TObject *Sender)

{ Table1- >DatabaseName = “e:\\mydata”;

Table1- >TableName = “example2.db”;

DBEdit1- >DataField = “编号”;

DBEdit2->DataField = “姓名”;

Table1->Active = true;

Image1->Picture->LoadFromFile(Table1->DatabaseName + “\\media\\” + Table1->FieldByName(“像片”)- >AsString);

}

将“增加记录”按钮的 OnClick事件过程修改为:

void __fastcall TForm1::Button2Click(TObject *Sender)

{ Table1->Active = false;

Table1->DatabaseName = “e:\\mydata”;

Table1->TableName = “example2.db”;

Table1->Active = true;

Table1->AppendRecord(OPENARRAY(TVarRec, (“20010521”,“刘德友”,“ldy.bmp”, “ldy.wav”,“ldy.avi”)));

Table1- >AppendRecord(OPENARRAY(TVarRec,(“20010522”,“王 英”,“wy.bmp”,“wy

.wav”, “wy.avi”)));

Table1->AppendRecord(OPENARRAY (TVarRec,(“20010523”,“张学华”, “zxh.bmp”,“zxh.wav”, “zxh.avi”)));

Table1->First();

// 记录指针移到数据表首条记录

Image1->Picture- >LoadFromFile(Table1->DatabaseName + “\\media\\”+Table1->FieldByName(“像片”)- >A

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号