例一效果图:

在GDI+中,绘制直线是通过TGPGraphics类的DrawLine方法实现的,此类的一些方法如下:

DrawLine(线条)

DrawRectangle(矩形)

DrawEllipse(椭圆)

DrawPolygon(多边形)

DrawArc(弧形)

DrawCurve(基数样条)

DrawBezier(贝塞尔样条)

当然,要想在程序上画出来我们还需要一个TGPPen类,此类也有一些方法,如下:

SetStartCap(设置起始笔帽)

SetEndCap(设置末端笔帽)

SetDashStyle(设置画笔类型)

SetColor(设置画笔颜色)

SetWidth(设置画笔宽)

步骤:

新建工程,窗口宽和高都设为250好了,再编辑Form1的OnPaint事件代码,如下:

unit Unit1; interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs;
type          //定义组件与组件事件或过程函数TForm1 = class(TForm)
procedure FormPaint(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}uses GDIPOBJ, GDIPAPI;     {加入这两个单元}procedure TForm1.FormPaint(Sender: TObject);
varg: TGPGraphics;           {定义图形类变量}p: TGPPen;                 {定义画笔类变量}
beging := TGPGraphics.Create(Canvas.Handle);{创建图形对象,参数为模块句柄,这里用的的画布句柄}p := TGPPen.Create(MakeColor(255,0,0),2);{创建画笔对象,参数1为颜色,参数2为笔宽,可以只留一个参数1,参数2默认为1}g.Clear(MakeColor(255,255,255));{清除整个绘图面并以指定背景色填充这里用白色填充}p.SetColor(aclBlue);  {设置颜色}p.SetWidth(10);        {设置笔宽}g.DrawLine(p,20,40,200,40);{参数是整数,参数1、2为线头距左、距上,  参数3、4为线尾距左、距上。}g.DrawLine(p,MakePoint(20,60),MakePoint(200,60));{参数是点(整数),也就是线头的那一点(X,Y),还有就是线尾的那一点(X,Y)}g.DrawLine(p,20.9,80.0,200.9,80.0);{参数是小数,可以使数值更加精确,参数1、2为线头距左、距上,参数3、4为线尾距左、距上。}g.DrawLine(p,MakePoint(20.9,100.0),MakePoint(200.9,100.0));{参数是点(小数),可以使数值更加精确,也就是线头的那一点(X,Y),还有就是线尾的那一点(X,Y)}g.Free;              {释放图形对象}p.Free;              {释放画笔对象}
end;

转载于:https://www.cnblogs.com/keyvip/archive/2010/10/10/1847197.html

Delphi下的GDI+编程[2] DrawLine - 绘制直线相关推荐

  1. Delphi下的COM编程

    Delphi通过向导可以非常迅速和方便的直接建立实现COM对象的代码,但是整个COM实现的过程被完全的封装,甚至没有VCL那么结构清晰可见. 一个没有C++下COM开发经验甚至没有接触过COM开发的D ...

  2. DELPHI下的SOCK编程(转)

    DELPHI下的SOCK编程       本文是写给公司新来的程序员的,算是一点培训的教材.本文不会涉及太多的编程细节,只是简单讲解在DELPHI下进行Winsock编程最好了解的知识. 题外话:我认 ...

  3. 跨进程的 键盘钩子_Delphi下深入Windows编程之钩子原理一

    我的理想是能够写出一个可以永不封号的游戏外G 嗯,所以需要学习Windows下编程,最近好不容易有一点点空余时间,抓紧时间读书[Delphi下深入Windows编程],人丑就该多读书 钩子原理 定义: ...

  4. Delphi XE GDI+编程

    1.准备工作 GDI+(Graphics Device Interface Plus 图形设备接口加)是 Windows XP 和 Windows Server 2003操作系统的子系统,也是.NET ...

  5. GDI+编程说明及小结

    原文地址:http://blog.csdn.net/byxdaz/article/details/5972759 GDI+(Graphics Device Interface Plus图形设备接口加) ...

  6. MFC之GDI GDI+ 编程实例剖析

    GDI和GDI+编程实例剖析 1.基本概念  GDI在Windows中定义为Graphics Device Interface,即图形设备接口,是Windows API(Application Pro ...

  7. GDI编程注意点-1

    最近接触GDI编程比较多,就把常见的技巧和注意点整理成一个系列吧,希望对大家有帮助. 1.TextOut的基本使用 TextOut的属于比较老的文本输出函数,但是简单的文本输出和格式控制使用它非常方便 ...

  8. Windows GDI和GDI+编程实例剖析(1)

    Windows GDI和GDI+编程实例剖析(1) 作者:宋宝华  e-mail:21cnbao@21cn.com 1.基本概念 GDI在Windows中定义为Graphics Device Inte ...

  9. Win32 OpenGL 编程(1)Win32下的OpenGL编程必须步骤

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! Win3 ...

最新文章

  1. 为反对种族歧视,GitHub正在把master/slave等术语替换掉
  2. 第十三章、facl及用户及Linux终端
  3. MVC中session创建并获取问题
  4. plsql developer 64位版本
  5. Kafka监控架构设计
  6. 带有控制按钮的图片滚动
  7. 【转】深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing) 第一节 理解堆与栈
  8. 第十六节: EF的CodeFirst模式通过Fluent API修改默认协定
  9. 正则表达式:获取一串字符串中,某个字符串到某个字符串之间的字符串,不包含左右,只取中间
  10. 制作点击文字变颜色_手机照片、视频怎样添加文字?原来很简单,4种方法一分钟搞定...
  11. 鼓励自己成为一名合格程序设计师
  12. 八皇后问题程序及注解
  13. 易买网(注册Ajax讲解)
  14. Java项目经验面试总结
  15. 最简单AS5048a模块鉴别和读取数据
  16. wp下载吧主题模板_内含newzhan2.60无授权版本
  17. Laravl路由的讲解
  18. 盘点2011年的网络流行语
  19. 一个U盘安装多个iso引导
  20. 【PCIe 5.0 - 1】PCIe Link属性

热门文章

  1. 程序员应该如何自我驱动,迅速获得成长?
  2. Java 并发编程73道面试题及答案 ——面试看这篇就够了!
  3. Java常量池的大概理解
  4. Spring Boot开启的2种方式
  5. 软件测试-TC用户模板导入不成功
  6. Uptime Tier Ⅳ标准数据中心的柴发油路设计关键点
  7. 《上海市产业绿贷支持绿色新基建(数据中心)发展指导意见》印发了
  8. 三伏天到了,记得为数据中心降降温
  9. UPS远程监控系统的设计与实现
  10. nbu 恢复oracle数据库,关于使用nbu重定向恢复oracle数据库rman报错