delphi 用DBExpress处理JPG图片


本文整理自网络,侵删。

 

数据库是SQL Server 2005,字段类型为Image。

窗体上放置了

SQLConnection1: TSQLConnection;
SQLDataSet1: TSQLDataSet;
DataSetProvider1: TDataSetProvider;
ClientDataSet1: TClientDataSet;
DataSource1: TDataSource;
Image1: TImage;

2个Button。一个Image1。

完整代码如下:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, WideStrings, DB, SqlExpr, DBCtrls, SnDBImage, StdCtrls, AdvCombo,
ImagePicker, FMTBcd, Provider, DBClient, cxControls, cxContainer, cxEdit,
cxImage, cxDBEdit, ExtCtrls,jpeg, ExtDlgs, FlatCtrls, FlatCtrdb;

type
TForm1 = class(TForm)
SQLConnection1: TSQLConnection;
SQLDataSet1: TSQLDataSet;
DataSetProvider1: TDataSetProvider;
ClientDataSet1: TClientDataSet;
DataSource1: TDataSource;
Image1: TImage;
ClientDataSet1BlobField: TBlobField;
Button1: TButton;
OpenPictureDialog1: TOpenPictureDialog;
Button2: TButton;
Button3: TButton;
FlatDBEdit1: TFlatDBEdit;
ClientDataSet1StringField: TStringField;
procedure ClientDataSet1AfterScroll(DataSet: TDataSet);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin//新增图片

if Self.OpenPictureDialog1.Execute then
begin
Self.ClientDataSet1.Insert;
Self.Image1.Picture.LoadFromFile(Self.OpenPictureDialog1.FileName);

ClientDataSet1BlobField.LoadFromFile(Self.OpenPictureDialog1.FileName);
end;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin//保存
Self.ClientDataSet1.ApplyUpdates(0);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin//编辑图片字段
if Self.OpenPictureDialog1.Execute then
begin
Self.ClientDataSet1.Edit;
Self.Image1.Picture.LoadFromFile(Self.OpenPictureDialog1.FileName);
ClientDataSet1BlobField.LoadFromFile(Self.OpenPictureDialog1.FileName);
end;
end;

procedure TForm1.ClientDataSet1AfterScroll(DataSet: TDataSet);
begin//每选择一个记录自动读取图片
ClientDataSet1BlobField.SaveToFile('123.jpg');
Self.Image1.Picture.LoadFromFile('123.jpg');
end;

end.

相关阅读 >>

Delphi双击tmemo选择光标所在行

Delphi xe2和xe3开发的程序中加入管理员权限申请

Delphi 调用js解决全角转半角

Delphi跨平台tcp库的封装

Delphi 2010 域名转换ip

Delphi图表控件tchart使用faq

Delphi 实现文件实施监控

Delphi的对象注销方法destroy和free的区别

Delphi 把整个窗体保存为图片的方法

Delphi 2009 indy10 idhttp get 中文出现乱码的问题

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...