Delphi瀹炵幇鍦ㄦ暟鎹簱涓瓨鍙栧浘鍍
鍙戝竷: 2008-6-26 20:19 | 浣滆: admin | 鏌ョ湅: 14娆
鏈疄渚嬫紨绀哄浣曞湪鏁版嵁搴撲腑瀛樺彇鍥惧儚鏂囦欢銆
鍚戠獥浣撲笂娣诲姞涓涓猅ListBox缁勪欢銆佷竴涓猅Image缁勪欢鍜屼竴涓猅Table缁勪欢锛岃璁″畬鎴愮殑涓荤晫闈㈠鍥1鎵绀恒

鍥1 涓荤晫闈
鏈郴缁熶腑闇瑕佽璁′竴涓柊鐨勫熀浜嶱aradox 7鐨勬暟鎹簱Image.db锛屽浘2涓鸿璁″畬鎴愮殑Image.db鏁版嵁搴撱

鍥2 璁捐瀹屾垚鐨勬暟鎹簱
涓轰簡鏂逛究娴嬭瘯绋嬪簭锛孖mage.db鏁版嵁搴撳瓨鍌ㄥ湪瀹炰緥绋嬪簭鎵鍦ㄧ殑璺緞涓嬨
璁剧疆TTable缁勪欢鐨凾ableName灞炴т负Image.db锛孉ctive灞炴т负True銆
鍦ㄧ▼搴忚繍琛屽垵鏈燂紝棣栧厛浼氬垽鏂璉mage.db鏁版嵁搴撲腑鏄惁瀛樺湪璁板綍锛屽鏋滄病鏈夎褰曞瓨鍦紝閭d箞灏辨墽琛屼互涓嬩唬鐮佸悜Image.db鏁版嵁搴撲腑娣诲姞鈥滈笩.bmp鈥濇枃浠讹細
procedure TForm1.FormCreate(Sender: TObject);
var
mem:TMemoryStream;
begin
if Table1.Eof and Table1.Bof then
begin
with Table1 do
begin
Insert;
FieldByName(鈥橬ame鈥).AsString:=鈥欓笩鈥;
mem:=TMemoryStream.Create();
mem.LoadFromFile(鈥欓笩.bmp鈥);
TBlobField(FieldByName(鈥橠ata鈥)).LoadFromStream(mem);
Post;
end;
end;
end;
鐒跺悗鎸夌収鐩稿悓鐨勬柟寮忛『搴忓悜Image.db鏁版嵁搴撲腑娣诲姞鈥滄牱鍝.wav鈥濄佲滃彾瀛.wav鈥濆拰鈥滆嵎鑺扁濆浘鍍忔枃浠躲
鏈鍚庨氳繃涓嬮潰鐨勪唬鐮佹妸Image.db鏁版嵁搴撲腑瀛樺偍鐨勬枃浠跺悕瀛楁坊鍔犲埌绐椾綋鐨凾ListBox缁勪欢涓細
with Table1 do
begin
First;
while not Eof do
begin
ListBox1.Items.Add(FieldByName(鈥橬ame鈥).AsString);
Next;
end;
end;
鍦ㄧ▼搴忚繍琛岃繃绋嬩腑锛屽鏋滅敤鎴峰湪绐椾綋鐨凾ListBox缁勪欢涓夋嫨浜嗗浘鍍忔枃浠讹紝绋嬪簭浼氶氳繃TTable缁勪欢鐨凢irst鏂规硶鎶婃暟鎹〃涓殑绗1鏉¤褰曚綔涓哄綋鍓嶈褰曪紝鐒跺悗閫氳繃涓涓惊鐜潵閬嶅巻鏁版嵁搴撲腑鐨勮褰曘傚鏋滄煇鏉¤褰曚腑Name瀛楁鐨勫唴瀹瑰拰鐢ㄦ埛鐨勯夋嫨鐩稿悓锛岄偅涔堝氨鎶婅璁板綍涓璂ata瀛楁涓殑鍥惧儚淇℃伅璇诲彇鍑烘潵锛屽苟涓旀妸鍥惧儚鏄剧ず鍦ㄧ獥浣撲笂鐨凾Image缁勪欢涓娿備唬鐮佸涓嬶細
procedure TForm1.ListBox1Click(Sender: TObject);
var
mem:TStream;
bmp:TBitmap;
begin
with Table1 do
begin
First;
while not Eof do
begin
if FieldByName(鈥橬ame鈥).AsString=ListBox1.Items[ListBox1.ItemIndex] then
break;
Next;
end;
bmp:=TBitmap.Create;
mem:=CreateBlobStream(FieldByName(鈥橠ata鈥),bmRead);
mem.Position:=0;
bmp.LoadFromStream(mem);
self.Image1.Picture.Assign(bmp);
bmp.Free;
mem.Free;
end;
end;
绋嬪簭浠g爜濡備笅锛
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, DBTables,mmsystem, ExtCtrls;
type
TForm1 = class(TForm)
ListBox1: TListBox;
Table1: TTable;
Image1: TImage;
procedure FormCreate(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
mem:TMemoryStream;
begin
if Table1.Eof and Table1.Bof then
begin
with Table1 do
begin
Insert;
FieldByName(鈥橬ame鈥).AsString:=鈥欓笩鈥;
mem:=TMemoryStream.Create();
mem.LoadFromFile(鈥欓笩.bmp鈥);
TBlobField(FieldByName(鈥橠ata鈥)).LoadFromStream(mem);
Post;
Insert;
FieldByName(鈥橬ame鈥).AsString:=鈥欐牱鍝佲;
mem:=TMemoryStream.Create();
mem.LoadFromFile(鈥欐牱鍝.bmp鈥);
TBlobField(FieldByName(鈥橠ata鈥)).LoadFromStream(mem);
Post;
Insert;
FieldByName(鈥橬ame鈥).AsString:=鈥欏彾瀛愨;
mem:=TMemoryStream.Create();
mem.LoadFromFile(鈥欏彾瀛.bmp鈥);
TBlobField(FieldByName(鈥橠ata鈥)).LoadFromStream(mem);
Post;
Insert;
FieldByName(鈥橬ame鈥).AsString:=鈥欒嵎鑺扁;
mem:=TMemoryStream.Create();
mem.LoadFromFile(鈥欒嵎鑺.bmp鈥);
TBlobField(FieldByName(鈥橠ata鈥)).LoadFromStream(mem);
Post;
mem.Free;
end;
end;
with Table1 do
begin
First;
while not Eof do
begin
ListBox1.Items.Add(FieldByName(鈥橬ame鈥).AsString);
Next;
end;
end;
end;
procedure TForm1.ListBox1Click(Sender: TObject);
var
mem:TStream;
bmp:TBitmap;
begin
with Table1 do
begin
First;
while not Eof do
begin
if FieldByName(鈥橬ame鈥).AsString=ListBox1.Items[ListBox1.ItemIndex] then
break;
Next;
end;
bmp:=TBitmap.Create;
mem:=CreateBlobStream(FieldByName(鈥橠ata鈥),bmRead);
mem.Position:=0;
bmp.LoadFromStream(mem);
self.Image1.Picture.Assign(bmp);
bmp.Free;
mem.Free;
end;
end;
end.
淇濆瓨鏂囦欢锛岀劧鍚庢寜F9閿繍琛岀▼搴忥紝绋嬪簭杩愯鐨勫垵濮嬬敾闈㈠鍥3鎵绀恒
鍦═ListBox缁勪欢涓変腑涓椤瑰悗锛屽氨浼氭樉绀虹浉瀵瑰簲鐨勫浘鍍忔枃浠讹紝濡傚浘4鎵绀恒

鍥3 绋嬪簭杩愯鐨勫垵濮嬬敾闈

鍥4 绋嬪簭杩愯缁撴灉




发表于 2009-1-5 19:48
| 











