-
Delphi 实现图像热点功能
Delphi 实现图像热点功能,实现一张图片上不同形状区域的热点,定义椭圆形、四边形、三角形的区域变量的热点,相关代码如下:
var
thepoint:array [1..8] of tpoint;//存储多边形顶点坐标
count:integer;
pointnum:array [1..2] of integer;
begin
//四边形顶点坐标,首末点封闭
thepoint[1]:=point(135,99);
thepoint[2]:=point(105,183);
thepoint[3]:=point(129,201);
thepoint[4]:=point(188,92);
thepoint[5]:=point(135,99);
count:=5;//四边形顶点数目,首末点为一点
fourE_rgn:=CreatePolygonRgn(thepoint,count,WINDING);//生成四边形区域
elli_rgn:=CreateEllipticRgn(64,221,231,263);// 生成椭圆形区域
//第一个三角形顶点坐标
thepoint[1]:=point(118,67);
thepoint[2]:=point(32,28);
thepoint[3]:=point(17,90);
thepoint[4]:=point(118,67);
//第二个三角形顶点坐标
thepoint[5]:=point(155,44);
thepoint[6]:=point(202,91);
thepoint[7]:=point(277,44);
thepoint[8]:=point(155,44);
pointnum[1]:=4;//第一个三角形顶点数目
pointnum[2]:=4;//第二个三角形顶点数目
count:=2;//三角形数目
//生成由两个三角形构成的三角形区域
tri_rgn:=CreatePolyPolygonRgn(thepoint,pointnum,count,WINDING);
end;
- 2022-01-26 08:02:50下载
- 积分:1
-
Delphi 制作红绿眼镜三维立体画
这是一个Delphi色彩控制方面的示例,我看上去更像是Delphi分离出红绿颜色通道,从页形成的一种立体效果,复制和修改颜色模式来实现,相关代码可参考如下:
//设置添充颜色的大小
DBitmap.Width := LBitmap.Width;
DBitmap.Height := LBitmap.Height;
vRect := Rect(0, 0, DBitmap.Width, DBitmap.Height); //获取添充区域
DBitmap.Canvas.Brush.Color := vGreen; //设置画笔颜色
DBitmap.Canvas.FillRect(vRect); //添充颜色
LBitmap.Canvas.CopyMode := cmSrcPaint; //将复制模式改为OR
LBitmap.Canvas.CopyRect(vRect, DBitmap.Canvas, vRect); //对图片进行复制
DBitmap.Canvas.Brush.Color := vRed;
DBitmap.Canvas.FillRect(vRect);
RBitmap.Canvas.CopyMode := cmSrcPaint; //将复制模式改为OR
RBitmap.Canvas.CopyRect(vRect, DBitmap.Canvas, vRect); //对图片进行复制
DBitmap.Canvas.CopyRect(vRect, LBitmap.Canvas, vRect);
DBitmap.Canvas.CopyMode := cmSrcAnd; //将复制模式改为AND
DBitmap.Canvas.CopyRect(vRect, RBitmap.Canvas, vRect);
except
Exit;
end;
Result := True;
end;
- 2023-02-01 08:05:04下载
- 积分:1
-
用Delphi生成图片水平交错的动态显示效果
用Delphi生成图片水平交错的动态显示效果,是一个简单的图片动态显示效果,显示图片的时候,以水平左右交错的方式显示,可用于电子相册中,用于多张图片切换时的过渡动画效果。
本程序有个缺点:只支持BMP的图片,对JPG支持不好,其它格式也不行哦。
- 2022-03-23 01:50:52下载
- 积分:1
-
Delphi 演示使用演示Brush对象的各种风格
Delphi 演示使用演示Brush笔刷对象后生成的各种风格,一种演示了7种笔刷效果,定义了一个存储绘图风格的7维数组,然后使用For循环对绘图风格数组赋值,然后使用Canvas.Brush.Style来预览风格。这些笔刷风格都是浅色彩的风格。
- 2022-07-08 18:13:17下载
- 积分:1
-
Delphi 使用Word作为自动化服务器
这个程序演示了使用Word作为自动化服务器,Delphi地自动化控制器是如何将一个查询结果插入到word文档中,返回应用参数.这个调用在英文和法文版的 Word中相同。对德文版的Word,这个过程名是翻译后的。如果这个过程不存在,存在一个不同的Word翻译版本,还可以插入中文Word,运行效果如图所示。
- 2022-04-29 13:18:27下载
- 积分:1
-
窗口中的弹出式右键菜单-delphi源码
窗口中的弹出式右键菜单-delphi PopupMenu源码,
procedure TForm1.Button1Click(Sender: TObject);
var
Poin:TPoint;
begin
Poin := Point(Button1.Left,Button1.Top+Button1.Height);
Poin := ClientToScreen(Poin);
PopupMenu1.Popup(Poin.X,Poin.Y);
end;
- 2022-07-24 15:12:59下载
- 积分:1
-
Delphi添加图层蒙版
Delphi添加图层蒙版,运行本程序后,在屏幕上添加一层阴影,透明度大概在70%左右,可看作是在屏幕上方蒙了一层薄膜的感觉,代码简单:procedure TForm1.FormCreate(Sender: TObject);
var
bTrans: Byte;
OldStyle: Integer;
begin
form1.Color := clGradientActiveCaption;
WindowState := wsMaximized;
BorderStyle := bsNone;
FormStyle := fsStayOnTop;
OldStyle := GetWindowLong(Handle, GWL_EXSTYLE);
SetWindowLong(Handle, GWL_EXSTYLE, OldStyle or WS_EX_LAYERED Or WS_EX_TRANSPARENT);
bTrans := 128;
SetLayeredWindowAttributes(Handle, 0, bTrans, LWA_ALPHA);
end;
- 2022-02-06 10:25:25下载
- 积分:1
-
Delphi 如何定义自已的鼠标单击事件
Delphi 如何定义自已的鼠标单击事件,本程序定义了监测鼠标中轮的事件,当用户按下鼠标中轮时,将监测到运作类型,并弹出窗口返回结果。
- 2022-05-13 22:55:23下载
- 积分:1
-
Delphi 枚举线程示例
枚举线程的Delphi实例代码,Delphi 枚举线程的例子应该很多了,这一个比较简单的那种,可以为学习Delphi的新手朋友提供一些参考思路,运行界面效果如下图所示。源代码编译于Delphi7.0环境。
- 2022-08-16 10:03:07下载
- 积分:1
-
使用Delphi 制作无闪烁的动画效果
使用Delphi 制作无闪烁的动画效果,如何实现不闪烁的动画呢?这个例子或许能找到一些答案:部分代码如下:
var
x,i: Integer;
dir,run: Boolean;
begin
b := TBitMap.Create;
b.Width := AnimWindow.Width;
b.Height := 32;
b.Canvas.Pen.Color := clBtnFace;
b.Canvas.Brush.Color := clBtnFace;
b.Canvas.Rectangle(0,0,AnimWindow.Width,32);
run := True;
dir := False;
x := 0;
while run do
for i := 0 to AnimWindow.ImageList1.Count-1 do
begin
b.Canvas.Rectangle(0,0,AnimWindow.Width,32);
AnimWindow.ImageList1.Draw(b.Canvas,x,0,i);
Synchronize(DrawAnimPic);
Sleep(AnimWindow.SpinEdit1.Value);
if (x = 0) or (x = 300) then dir := not dir;
if dir then Inc(x) else Dec(x);
end;
b.Free;
end;
- 2023-03-22 21:40:04下载
- 积分:1