登录
首页 » Delphi源码 » Delphi 实现图像热点功能

Delphi 实现图像热点功能

于 2022-01-26 发布 文件大小:7.25 kB
0 134
下载积分: 2 下载次数: 1

代码说明:

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;

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • Delphi 文件目录操作
    一个基础的Delphi 文件目录操作示例,这里是拷贝指定的文件夹目录,一是了解复制文件的原理,二是熟悉Delphi中的目录操作技巧。
    2022-03-15 15:35:17下载
    积分:1
  • Delphi 进程通讯的实现实例
    这是一个Delphi利用自定义消息实现的进程内部通讯的例子,附上了完整的源码,运行的效果如图所示。   本程序作者:王毅 , 陈立亮 , 刘蓉,在Windows2000环境下用Delphi6.0调试通过。   本例子中主控程序采用FindWindow()函数找寻底层工作程序,从而实现通讯。底层工作程序在调试时请先生成可执行文件,然后关闭Delphi编辑器,运行可执行文件进行调试。如果不关闭Delphi编辑器,底层工作程序窗口在处于最小化时将无法正常工作,因为FindWindow()返回的是Delphi编辑器中该窗口的句柄。
    2022-07-04 09:38:31下载
    积分:1
  • Delphi 获取两个子字符串之间的字符个数
    Delphi 获取两个子字符串之间的字符个数,也就是这个字符串由A/B/C三个字符组成,本例子是求A/C中间的所有字符串的个数,空格同样也包括在内。定义两个函数即可实现本功能:   Function TForm1.Strcount( s, s1, s2 : string ): integer;   var    i,j,slen : integer;   begin    i := pos( s1, s );    j := pos( s2, s );    slen := Length(s1);    if j >= i then    Result := j - i - slen    else    Result := 0;   end;   procedure TForm1.Button1Click(Sender: TObject);   var    n : integer;   begin    n := Strcount(Edit1.Text,Edit2.Text,Edit3.Text);    showmessage(IntToStr(n));   end;
    2022-01-26 07:45:23下载
    积分:1
  • Delphi 控制键盘指示灯
    Delphi 控制键盘指示灯,控制键盘灯打开或关闭。就像大小写切换时候,小键盘上面的灯会亮起、关闭,比较简单的一个小功能,适合入门学者参考学习。
    2023-04-11 08:00:04下载
    积分:1
  • Delphi数据库编程案例:教材管理系统
    这是一款基于Delphi和Access数据库的编程案例:教材管理系统源码,经过修正完善后可作为学校的教材管理程序,功能模块主要有:系统功能设置、教材资料输入、教材出入库管理、教材信息管理等。
    2022-04-14 14:29:20下载
    积分:1
  • Delphi 显示彩色数据表格
    Delphi 显示彩色数据表格,对DBGrid数据表格进行美化,自定义任意行和任意列单元格显示不同的背景颜色,这样可实现特定数据显示不同的颜色,更利于报表的清淅直观。
    2022-03-15 16:49:57下载
    积分:1
  • Delphi 设定Windows屏幕分辨率的方法和示例代
    Delphi 设定Windows屏幕分辨率的方法和示例代码:   function TForm1.DynamicResolution(X, Y: word): BOOL;   var    lpDevMode: TDeviceMode;   begin    Result := EnumDisplaySettings(nil, 0, lpDevMode);    if Result then    begin    lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;    lpDevMode.dmPelsWidth := X;    lpDevMode.dmPelsHeight := Y;    Result := ChangeDisplaySettings(lpDevMode, 0) = DISP_CHANGE_SUCCESSFUL;    end
    2023-04-22 01:05:03下载
    积分:1
  • Delphi IntToHex函数用法举例
    关于IntToHex,在Delphi中使用频率也是挺高的,不过像我这种菜鸟,对IntToHex的具体用法仍是不太熟悉,后来看了这个小程序,了解了一些,分享给大家,特别是以下代码会加深你对IntToHex函数的用法理解。   procedure TForm1.Button1Click(Sender: TObject);   var    S:integer;   begin    S:=2147483647;    showmessage(inttoHex(s,8));    showmessage(inttoHex(s,10));    showmessage(inttoHex(s,16));    showmessage(inttoHex(s,32));   end;
    2022-09-07 01:20:03下载
    积分:1
  • Delphi 隐藏或显示鼠标指针
    Delphi 隐藏或显示鼠标指针,在编译后运行本程序生成的Exe程序,在窗口中单击鼠标左键,鼠标会消失,被隐藏了,再次单击后鼠标重现,很好的演示了在Delphi中如何显示或隐藏鼠标的操作。
    2022-01-26 04:41:31下载
    积分:1
  • Delphi 将TDBGrid导入到Excel表中附数据库
    Delphi7.0将TDBGrid导入到Excel表中,测试程序先连接好SQLSERVER数据库,并将数据读取到TDBGrid中,然后再将数据从TDBGrid导入到Excel表中,为了测试方便,SQLSERVER数据库文件已经附在源码包中。以下代码片断会有参考意义,完整源码请下载:   //将TDBGrid表中的标题插入到Excel表中的首行   for I:=0 to DbName.Columns.Count-1 do   begin    if DbName.Columns[i].Visible=False then    Continue;    Page.Cells[j,i+1] := DbName.Columns[i].Title.Caption;    Page.Cells[j,i+1].Font.Bold := True; //设置字体为粗体   end;   Inc(j); //Excel表中的下一行   First; //将指针返回到TDBGrid表中数据的首行   while not Eof do   begin    for i:=0 to DbName.Columns.Count-1 do    begin    if DbName.Columns[i].Visible=False then    Continue;    //将指定行中每列的数据,添加到Excel表中    Page.Cells[j,i+1] := trim(DbName.DataSource.DataSet.Fieldbyname(DbName.Columns[i].FieldName).asstring);    end;    Inc(j); //Excel表中的下一行    Next; //TDBGrid表中的下一条记录   end;
    2022-06-29 23:05:07下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载