荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: Kenniel (笑翻下先^_^), 信区: Database
标  题: Re: 请问怎么样把图片存入SQL数据库?[转载]
发信站: 荔园晨风BBS站 (Tue Apr 20 22:21:04 2004), 站内信件

用delphi实现,如果要例子的话可以找我
unit image;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
  Dialogs, ExtDlgs, StdCtrls, ExtCtrls, DB, ADODB,JPEG, DBCtrls;

type
  TForm1 = class(TForm)
    GroupBox1: TGroupBox;
    Image1: TImage;
    Select: TButton;
    OpenPicDlg: TOpenPictureDialog;
    Save: TButton;
    ADOConnection1: TADOConnection;
    ADOTable1: TADOTable;
    DataSource1: TDataSource;
    GroupBox2: TGroupBox;
    DBImage1: TDBImage;
    DBNavigator1: TDBNavigator;
    procedure SelectClick(Sender: TObject);
    procedure SaveClick(Sender: TObject);
    procedure ADOTable1AfterScroll(DataSet: TDataSet);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.SelectClick(Sender: TObject);
begin
        if openpicdlg.Execute then
                image1.Picture.LoadFromFile(openpicdlg.FileName);

end;

procedure TForm1.SaveClick(Sender: TObject);
var
        ext:string;
begin
        if image1.Picture.Graphic<>nil  then
        begin
                adotable1.Edit;
                adotable1.FieldByName('myimage').Assign(image1.Picture.
Graphic);
                ext:=extractfileext(openpicdlg.FileName);
                if uppercase(ext) = '.BMP'  then
                        adotable1.FieldByName('isbmp').Value:=1
                else if (uppercase(ext) = '.JPEG') or (uppercase(ext)
= '.JPG') then
                        adotable1.FieldByName('isbmp').Value:=0;
                adotable1.Post;
        end;
end;

procedure TForm1.ADOTable1AfterScroll(DataSet: TDataSet);
var
        jpegimg:Tjpegimage;
begin
        image1.Picture.Graphic := nil;
        if adotable1.FieldByName('isbmp').AsString = '1' then
                image1.Picture.Bitmap.Assign(adotable1.
FieldByName('myimage'))
        else if adotable1.FieldByName('isbmp').AsString = '0' then
        begin
                jpegimg := Tjpegimage.Create;
                try
                        jpegimg.Assign(adotable1.
FieldByName('myimage'));
                        image1.Picture.Graphic:=jpegimg;
                finally
                        jpegimg.Free;
                end;
        end;

end;

end.

【 在 Kenko (坎坷) 的大作中提到: 】
: ????
: 【 在 LNK (我可以为成功而一再失败!!!) 的大作中提到: 】


--
※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.97]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店