如何在数据表中存取图片 - 回复 "三足乌" 的问题
准备工作:
1、在空白窗体上添加: ClientDataSet1、Button1
2、激活窗体的 OnCreate 事件、激活 Button1 的 OnClick 事件
实现代码:
unit Unit1; interface uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, DBClient; type
TForm1 = class(TForm)
ClientDataSet1: TClientDataSet;
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
end; var
Form1: TForm1; implementation {$R *.dfm} const
PicPath1 = 'c:\temp\test1.bmp'; {保证测试图片的存在}
PicPath2 = 'c:\temp\test2.bmp'; {建立数据表并载入数据}
procedure TForm1.FormCreate(Sender: TObject);
begin
{建表}
with ClientDataSet1 do begin
FieldDefs.Add('Name', ftWideString, );
FieldDefs.Add('Age', ftInteger);
FieldDefs.Add('Picture', ftGraphic);
CreateDataSet;
end; {添加第一条数据}
ClientDataSet1.Append;
ClientDataSet1['Name'] := '张三';
ClientDataSet1['Age'] := ;
TGraphicField(ClientDataSet1.FieldByName('Picture')).LoadFromFile(PicPath1); {添加第二条数据}
ClientDataSet1.Append;
ClientDataSet1['Name'] := '李四';
ClientDataSet1['Age'] := ;
TGraphicField(ClientDataSet1.FieldByName('Picture')).LoadFromFile(PicPath2);
end; {读出指定记录中的图片数据}
procedure TForm1.Button1Click(Sender: TObject);
var
BlobStream: TClientBlobStream;
GraphicField: TGraphicField;
Bitmap: TBitmap;
begin
{查找姓名是李四的记录}
if ClientDataSet1.Locate('Name', '李四', []) then //可以把其中的李四换成张三试试
begin
{读取其 Picture 字段}
GraphicField := ClientDataSet1.FieldByName('Picture') as TGraphicField;
{读入到 Blob 流}
BlobStream := TClientBlobStream.Create(GraphicField, bmRead);
{给一个 TBitmap 流是为了看看}
Bitmap := TBitmap.Create;
Bitmap.LoadFromStream(BlobStream);
Canvas.Draw(, , Bitmap);
Bitmap.Free;
//
BlobStream.Free;
end;
end; end.
如何在数据表中存取图片 - 回复 "三足乌" 的问题的更多相关文章
- thinkphp5.0查询到的数据表中的路径是反斜杠导致无法正常显示图片怎么办?
添加到数据表中图片的路径有时会是反斜杠,这就导致了在url后面写路径的时候会识别不出来(不过src后面写路径就可以识别),所以就需要把路径中的反斜杠替换成正斜杠,代码如下: $datu = Db::q ...
- 默认情况下,不使用of子句表示在select所有的数据表中加锁(转)
Select …forupdate语句是我们经常使用手工加锁语句.通常情况下,select语句是不会对数据加锁,妨碍影响其他的DML和DDL操作.同时,在多版本一致读机制的支持下,select语句也不 ...
- ArcMap图层属性表中添加图片
一看标题是不是有点懵?懵就对了!刚接触到的时候我也有点懵,属性表不是都是文本啊数字啊之类的格式,怎么还可以存图片,下面就带大家来看看吧! 一.关于图层入库问题 图层进入数据库和图层以shp格式存储时, ...
- Aspose.cells 读取Excel表中的图片问题
一.说明 本文主要是讲解,怎么使用aspose.cells读取Excel表中的图片,并把图片转换成流或是image对象. 二.开发环境说明 开发工具vs2012,c#语言, 三.Aspose.cell ...
- python mysql 图片保存到表,从表中读出图片
fp = open(aa, 'rb') try: img = fp.read() except: print("图片打开出错") fp.close() return img #上面 ...
- DataTable to Excel(使用NPOI、EPPlus将数据表中的数据读取到excel格式内存中)
/// <summary> /// DataTable to Excel(将数据表中的数据读取到excel格式内存中) /// </summary> /// <param ...
- excel to datatable (c#用NPOI将excel文件内容读取到datatable数据表中)
将excel文件内容读取到datatable数据表中,支持97-2003和2007两种版本的excel 1.第一种是根据excel文件路径读取excel并返回datatable /// <sum ...
- SQL批量更新数据库中所有用户数据表中字段类型为tinyint为int
--SQL批量更新数据库中所有用户数据表中字段类型为tinyint为int --关键说明:--1.从系统表syscolumns中的查询所有xtype='48'的记录得到类型为[tinyint]的字段- ...
- 在数据表中添加一个字段的SQL语句怎么写
如果要在数据表中添加一个字段,应该如何表示呢?下面就为您介绍表添加字段的SQL语句的写法,希望可以让您对SQL语句有更深的认识. 通用式: alter table [表名] add [字段名] 字 ...
随机推荐
- restful framework之权限组件
一.权限简介 只用超级用户才能访问指定的数据,普通用户不能访问,所以就要有权限组件对其限制 二.局部使用 from rest_framework.permissions import BasePerm ...
- js.ajax优缺点,工作流程
1.ajax的优点 Ajax的给我们带来的好处大家基本上都深有体会,在这里我只简单的讲几点: 1.最大的一点是页面无刷新,在页面内与服务器通信,给用户的体验非常好. 2.使用异步方式与服务器通信,不 ...
- 自适应浏览器分辨率的javascript函数[转]
function changeWidth(now,target) { //now是现在代码所适应的宽度,如800:target是想要达到的显示器分辨率宽度var widthStr; var flag ...
- IIS7 增加JSON文件解析
在MIME增加一个Json类型,在MIME增加一个配置如:添加---> 文件扩展名为 .JSON ,MIME类型为text/json(也有将application/x-javascript) 然 ...
- 通过扩展方法简化UnityAPI调用
通过扩展方法简化UnityAPI调用 扩展方法unity apiapi简化 通过扩展方法简化UnityAPI调用 能省一秒是一秒,时间就是金钱,没人愿意把时间花在冗长的coding上
- 解决Ubuntu“下载额外数据文件失败 ttf-mscorefonts-installer”的问题 (转载)
解决Ubuntu“下载额外数据文件失败 ttf-mscorefonts-installer”的问题 发表于 2017-09-15 | 更新于 2018-04-29 | 分类于 Linux | 评论数: ...
- 微软Word制作自己的模板
我们在用Word的时候,很多时候需要一定的格式. 这个时候,*.dotx文件出场了!它将带给我们自己的模板. 步骤: 首先,新建一个文档,选择空白文档: 图片大就大吧,不要在意这些细节. 编辑一下,保 ...
- Windows 本地文件搜索神器
Wox: Windows 本地文件搜索神器 下载地址: https://github.com/Wox-launcher/Wox 注: Wox只能搜索C盘下的文件,所以需要结合everything 如果 ...
- python 输出格式化之后的时间格式
import timetime.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
- [译文]c#扩展方法(Extension Method In C#)
原文链接: https://www.codeproject.com/Tips/709310/Extension-Method-In-Csharp 介绍 扩展方法是C# 3.0引入的新特性.扩展方法使你 ...