摘要:老板提出,要求让客户自己能够设计quickreport报表的外观,我自己以前也考虑过这个功能是否能够实现,觉得还是比较麻烦。还好,这次不要求内容只要求了格式,现在我有个想法:用一个form显示报表,截获该form的鼠标消息,维护一个保存报表各元件属性的数据结构,通过判断鼠标位置和动作对相应的元件进行处理来实现拖放,结果保存为xml;创建报表的时候从xml里读入各属性对相应元件进行初始化设置。
准......
摘要:刚刚结束的borcon 2004上公开了delphi9(代号:diamondback)的最新影像。目前公布的新特性:
新的delphi语言特性,for..in.. do enumerator,(觉得判断一个字符串是否属于某个字符串列表时特别有用)delphi win32, .net, c# all in one ide (应该就是bds的最新版,果然集成在一起了)vcl, vcl for .ne......
对齐到网格
var
igridsize : integer = 16;
procedure tform1.formpaint(sender: tobject);
var
i, j : integer;
begin
self.doublebuffered := true;
for i := 0 to self.width do
for j := 0 to self.height do
if (j mod igridsize = 0) and (i mod igridsize = 0) then
self.canvas.pixels[i, j] := clnavy;
end;
procedure tform1.shape1mousedown(sender: tobject; button: tmousebutton;
shift: tshiftstate; x, y: integer);
begin
if button = mbleft then
begin
self.ioldx := x;
self.ioldy := y;
end;
end;
procedure tform1.shape1mousemove(sender: tobject; shift: tshiftstate; x,
y: integer);
begin
if ssleft in shift then
begin
shape1.left := shape1.left + x - ioldx;
shape1.top := shape1.top + y - ioldy;
end;
end...
下一页 摘要:现在很多应用都需要上传与下载大型文件,通过http方式上传大文件有一定的局限性。幸好ftp作为一个非常老而且非常成熟的协议可以高效稳定地完成大文件的上传下载,并且可以完美地实现续传。就拿我写的电影服务器管理端程序来说,各种方案比较后,发现使用ftp可以完美地实现要求。但是要通过winsocket库实现ftp比较麻烦,幸好有indy--一个包装了大多数网络协议的组件包。
通过indy,程序设计人......