MyCol := TcxColumn.Create;
... MyCol.PropertiesClass := TcxImageProperties;
ImageProps := TcxImageProperties(MyCol.Properties);
ImageProps.Center := True;
ImageProps.GraphicClassName := '';
ImageProps.OnGetGraphicClass := GetThumbnailGraphicClass;
ImageProps.Stretch := True;
... Procedure GetThumbnailGraphicClass: procedure TCORSA.GetThumbnailGraphicClass(AItem: TObject;
ARecordIndex: Integer; APastingFromClipboard: Boolean;
var AGraphicClass: TGraphicClass);
begin
if AnsiSAmeText(FThumbNailExtension, '.TIF') then
AGraphicClass := TGraphicClass(GetClass('TTiffGraphic'))
else
if AnsiSAmeText(FThumbNailExtension, '.JPG') then
AGraphicClass := TGraphicClass(GetClass('TJPEGImage'))
end; The actual thumbnail data is loaded into the grid via streams: MStream := TMemoryStream.Create;
Stream := TStringStream.Create(''); MStream.LoadFromFile(ThumbNail);
Stream.CopyFrom(MStream, MStream.Size); FActiveGrid.DataController.SetValue(RowInfo.RecordIndex,
ThumbCol,
Stream.DataString);

改进后的:

 

function StreamToVar(Stream: TStream): OleVariant;
var
P: Pointer;
begin
Result := VarArrayCreate([, Stream.size -],Varbyte);
P := VarArrayLock(Result);
Try
Stream.Position := ;
Stream.Read(P^, Stream.size);
Finally
VarArrayUnlock(Result);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
IRecIdx : Integer;
stream : TMemoryStream;
begin
with cxGrid1TableView1.DataController do
begin
IRecIdx := AppendRecord;
stream := TMemoryStream.Create();
stream.LoadFromFile('H:\pic\随拍\IMAG0002.jpg');
stream.Position := ;
Values[IRecIdx,] := StreamToVar(stream);
stream.Free;
Post;
end;
end;

TcxGrid Column动态添加Image的更多相关文章

  1. 编辑 Ext 表格(一)——— 动态添加删除行列

    一.动态增删行 在 ext 表格中,动态添加行主要和表格绑定的 store 有关, 通过对 store 数据集进行添加或删除,就能实现表格行的动态添加删除.   (1) 动态添加表格的行  gridS ...

  2. Android开发之动态添加控件

    动态添加TextView控件: 一:创建一个Android project项目 activity_main.xml文件: 1.用两个LinearLayout布局分别包裹一对TextView,EditT ...

  3. C# DataGridView控件动态添加新行

    C# DataGridView控件动态添加新行 DataGridView控件在实际应用中非常实用,特别需要表格显示数据时.可以静态绑定数据源,这样就自动为DataGridView控件添加相应的行.假如 ...

  4. WPF实现选项卡效果(3)——自定义动态添加的AvalonDock选项卡内容

    原文:WPF实现选项卡效果(3)--自定义动态添加的AvalonDock选项卡内容 简介 在前面一篇文章里面,我们实现了AvalonDock选项卡的动态添加,但是对于选项卡里面的内容,我们并没有实现任 ...

  5. 关于devexpress报表XtraReport,动态修改报表样式(.repx格式),动态添加数据并使用的理解

    一.基本概念: XtraReports 中的每个报表都由 XtraRepot 类的一个实例表示,或者由该类的子类来表示(这种情况更常见). 因此,每个报表都作为带区的容器使用,而每个带区中都包含报表控 ...

  6. 利用cglib给javabean动态添加属性,不用在建VO

    有的时候 比如你用的是hibernate或者Spring jdbc 来做dao层进行数据库相关的操作的时候,若果是单表的操作的时候 还比较简单 hibernate可直接返回(get,load)你的需要 ...

  7. WPF GridView动态添加项并读取数据

    假设数据库有如下表, 首先我们创建一个WPF工程,界面如下 <Window x:Class="WpfApplication2.MainWindow" xmlns=" ...

  8. WPF中TreeView控件数据绑定和后台动态添加数据(一)

    数据绑定: 更新内容:补充在MVVM模式上的TreeView控件数据绑定的代码. xaml代码: <TreeView Name="syntaxTree" ItemsSourc ...

  9. js动态添加事件-事件委托

    作者:白狼 出处:http://www.manks.top/javascript-dynamic-event.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给 ...

随机推荐

  1. django models class 不识别问题解决方案

    目录 1. 事情起因 2. 排查经过 3. 总结 1. 事情起因 今天在写代码的时候,在django 的models目录中新增了一个pkg.py文件,里面定义了一个class, 在执行 makemig ...

  2. Poj 2853,2140 Sequence Sum Possibilities(因式分解)

    一.Description Most positive integers may be written as a sum of a sequence of at least two consecuti ...

  3. Poj_1008--Maya Calendar

    一.Description 上周末,M.A. Ya教授对古老的玛雅有了一个重大发现.从一个古老的节绳(玛雅人用于记事的工具)中,教授发现玛雅人使用了一个一年有365天的叫做Haab的历法.这个Haab ...

  4. java 代码。= -=

    package com.da; //toString()方法, //Object类重写... public class ty { private String name; private int ag ...

  5. web攻击之三:SQL注入攻击的种类和防范手段

    观察近来的一些安全事件及其后果,安全专家们已经得到一个结论,这些威胁主要是通过SQL注入造成的.虽然前面有许多文章讨论了SQL注入,但今天所讨论的内容也许可帮助你检查自己的服务器,并采取相应防范措施. ...

  6. kvm基础 虚拟机内存、CPU调整

    转自http://blog.csdn.net/hnhuangyiyang/article/details/50902223 一.调小虚拟机内存 调小虚拟机内存可以动态实现,不用关机1.查看当前内存大小 ...

  7. SharePoint 无法“使用资源管理器打开”

    提示错误信息: 在文件资源管理器中打开此位置时遇到问题.将此网站添加到受信任的站点列表,然后重试. 服务器情况: 安装 Internet Explorer 10 后,在 Windows 资源管理器中打 ...

  8. ServerSocket01

    ServerSocket表示服务端套接字:我们首先来看下其中的一个构造器: public ServerSocket(int port,int backlog) throws IOException 其 ...

  9. 树莓派 Learning 002 装机后的必要操作 --- 00 修改键盘布局

    树莓派 装机后的必要操作 - 修改键盘布局 我的树莓派型号:Raspberry Pi 2 Model B V1.1 装机系统:NOOBS v1.9.2 上网查,发现树莓派的键盘布局不对,树莓派(ras ...

  10. 关于android上dpi/screen-size的厘清解释

    android定义了四种screen-size: small normal large xlarge 同时定义了六种dpi级别: ldpi (low) ~120dpimdpi (medium) ~16 ...