如何在delphi中画线条、画矩形框?

pzh508 2006-10-16 07:19:36
在delphi如何自己画线段、画矩形框等这些图形?而且还可以实现线条的粗细、线条的颜色。还可以是实线还是虚线还是点?就像类似windows画笔那样!谁能提供思路或者源代码啊?谢谢
...全文
1122 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lileammm 2006-10-22
  • 打赏
  • 举报
回复
up
pzh508 2006-10-22
  • 打赏
  • 举报
回复
再Up
pzh508 2006-10-21
  • 打赏
  • 举报
回复
我知道这种方法可以画出来,可是如果我想对画好的那个线段、或者是那个矩形进行选中,然后进行调整位置或者调整长度宽度我就不知道怎么搞了,谁能提供思路或者代码?

自己up


nevergetwin 2006-10-17
  • 打赏
  • 举报
回复
楼上说得对,你可以看看书,关于Canvas画图的,Pen,brush等等
再结合Onmousemove OnMouseUp OnMouseDown等属性就能制作自己的画图板了
wudi_1982 2006-10-17
  • 打赏
  • 举报
回复
MoveTo(x,y); //移动光标
LineTo(x,y); //画线


Rectangle(X1, Y1, X2, Y2);
pzh508 2006-10-17
  • 打赏
  • 举报
回复
我知道这种方法可以画出来,可是如果我想对画好的那个线段、或者是那个矩形进行选中,然后进行调整位置或者调整长度宽度我就不知道怎么搞了,谁能提供思路或者代码?
柯本 2006-10-16
  • 打赏
  • 举报
回复
Canvas.MoveTo(x,y); //移动光标
Canvas.LineTo(x,y); //画线
Canvas.Rectangle(X1, Y1, X2, Y2); //画框
Canvas.Pen.Width //线宽
Canvas.Pen.Style //线型
如:
procedure TForm1.Button1Click(Sender: TObject);
begin

Canvas.Pen.Width:=10;
Canvas.Pen.Style:=psDash;
Canvas.Pen.Color:=clred;
Canvas.MoveTo(100,100);
Canvas.lineto(200, 200);
Canvas.Pen.Width:=1;
Canvas.Rectangle(10,10,100,100);
end;
SKINSE界面库最新版3.1. SKINSE高级特性 1.SKINSE界面库内部没有完全采用HOOK拦截窗口的机制,主要采用子类化控件,修改窗口过程函数的方式进行界面美化。但是内置HOOK技术,可以动态设置HOOK,保证了SKINSE在整理构架上的灵活性。 2.SKINSE界面库内置DirectUI绘制思想,将界面绘制元素抽象成图片、文本、矩形区域、线条、动,并且内置EventItem、DrawItem绘制机制。可以将这些绘制元素以及绘制机制组合开发,实现按钮、单选框、复选框、分组框、Tab控件、动控件等界面控件。 3.SKINSE界面库提供了非常丰富的API接口,最大限度的让SKINSE界面库更加透明化、个性化,让SKINSE界面库的使用范围得到最大延伸。 4.SKINSE界面库在子类化进行控件美化的时候,尽量不修改控件的默认属性,最大程度地兼容window标准控件的默认属性。比如,目前市场上很多界面库在绘制窗口标题栏的时候,去掉了窗口的WS_CAPTION属性, 导致GetClientRect、GetWindowRect方法失效,从而加大了界面开发和设计的难度,当然也导致不能完美支持SDI/MDI等界面框架。 5.SKINSE界面库提供了界面控件动态布局的特性。省去了程序开发中最为繁琐的窗口控件位置的调整。只需要调整一下XML配置属性,就可以进行完美布局。 6.SKINSE界面库支持BMP、ICO、PNG、JPG等图片格式,支持皮肤色调变换,提供SKINSE内部的图像引擎接口。 7.SKINSE界面库支持SDI、MDI等界面框架,支持20余种界面控件,完整兼容window 2000、window2003、window XP、vista、window7当前的主流操作系统。并且支持window平台的VC、.NET、VB6、Delphi、C++ Builder、PowerBuilder、易语言等多种计算机语言开发。
这是一款真正意义上适合软件界面开发的C++界面库。采用XML管理GDI资源(如:图片、字体、颜色等),最大程度将界面与逻辑分开,让程序员有更多的时间去进行软件内部的逻辑处理。SKINSE扩展了非常丰富的API接口,兼容其他界面控件,使界面开发更加灵活、高效。SkinSE只用到了windows几个底层的核心库,没有用到(MFC/ATL等第三方库),采用纯API编写,采用C语言导出方式,增强可移植性,可以用于多种计算机语言。 1.SKINSE界面库内部没有完全采用HOOK拦截窗口的机制,主要采用子类化控件,修改窗口过程函数的方式进行界面美化。但是内置HOOK技术,可以动态设置HOOK,保证了SKINSE在整理构架上的灵活性。 2.SKINSE界面库内置DirectUI绘制思想,将界面绘制元素抽象成图片、文本、矩形区域、线条、动,并且内置EventItem、DrawItem绘制机制。可以将这些绘制元素以及绘制机制组合开发,实现按钮、单选框、复选框、分组框、Tab控件、动控件等界面控件。 3.SKINSE界面库提供了非常丰富的API接口,最大限度的让SKINSE界面库更加透明化、个性化,让SKINSE界面库的使用范围得到最大延伸。 4.SKINSE界面库在子类化进行控件美化的时候,尽量不修改控件的默认属性,最大程度地兼容window标准控件的默认属性。比如,目前市场上很多界面库在绘制窗口标题栏的时候,去掉了窗口的WS_CAPTION属性, 导致GetClientRect、GetWindowRect方法失效,从而加大了界面开发和设计的难度,当然也导致不能完美支持SDI/MDI等界面框架。 5.SKINSE界面库提供了界面控件动态布局的特性。省去了程序开发中最为繁琐的窗口控件位置的调整。只需要调整一下XML配置属性,就可以进行完美布局。 6.SKINSE界面库支持BMP、ICO、PNG、JPG等图片格式,支持皮肤色调变换,提供SKINSE内部的图像引擎接口。 7.SKINSE界面库支持SDI、MDI等界面框架,支持20余种界面控件,完整兼容window 2000、window2003、window XP、vista、window7当前的主流操作系统。并且支持window平台的VC、.NET、VB6、Delphi、C++ Builder、PowerBuilder、易语言等多种计算机语言开发。
Visual Graph是一套完整的图形编程语言,能够非常方便地建造各种基于图形的界面, 制作各种行业专用的图形控件,还可以制作丰富多样的报表。她能够和其他开发语言实现互相调用,弥补这些语言在图形(或报表)处理方面的不足。曾用她独立开发完成容量达200兆的电力调度自动化系统!用她开发的报表生成系统非常酷,能在预览界面下自由实现编辑,能有无数级别Undo和Redo,完全中国式! 软件的特点是: 一、丰富的制图功能: 能折线、矩形、椭圆、圆弧、文字框等最基本图形元件,具备简单的开放性接口,能插入其他编程语言中的各种可视化组件,诸如按钮、列表框、图片等。图形单元具有多种可变属性,线条的颜色、类型、宽度、箭头;背景的颜色、网纹;文字框的字型、字号、颜色、下划线类型、四边的类型、文字横向、纵向的对齐方式。编辑能力包括移动、剪贴、拷贝、粘贴、删除、层次、智能排版等,并具有多级Undo和Redo功能。表格功能包括分割、合并文字单元、插入、删除表格行、丰富的查找与替换、智能斜线、多种数字修饰方式、多种序列填充模式、把一组文字框定义成数组方便计算。视图能力包括窗口无级缩放、用来方便单元定位的栅格、放在工作区内的打印纸可以方便地改变放大率和打印区域。二、中国式的表格特点: 表格是典型的中国式,不同于国外电子表格,这里没有行列的概念,而代之以“单元组”的概念,不论其中的单元是否在同行、同列,表中任何一组单元都能用鼠标拖动到其他位置,单元组间可以建立任何复杂的算法,所以处理中国式的复杂表格例如表中套表最为简单。在表格被插入具体应用程序中后,仍然允许编辑某些文字单元。图形无级缩放,无需“模拟显示”,完全所见所得的编辑见面。可以用鼠标拖动打印纸,改变放大率和打印区域。三、能够开发基于图形的控件: Visual Graph能够轻松制作各种图形元件,并把它们放入元件库中以便重复使用,通过传递一系列数据参数,改变元件的反应。四、强大的编程能力: 能够编写各种算法,能够处理鼠标、键盘消息。例如在视图文件初始化时调用OnCreate、释放时调用OnDestroy、单击左键时调用OnClick等等。这里所用的语言采用最古典、最简单的语法结构,具有简单的数据类型,内置上百个常用函数(数学运算、图形、字符串、系统控制等),此外支持外挂函数库,使它能够直接调用其他开发环境提供的丰富功能。
Visual Graph是一套完整的图形编程语言,能够非常方便地建造各种基于图形的界面, 制作各种行业专用的图形控件,还可以制作丰富多样的报表。她能够和其他开发语言实现互相调用,弥补这些语言在图形(或报表)处理方面的不足。曾用她独立开发完成容量达200兆的电力调度自动化系统!用她开发的报表生成系统非常酷,能在预览界面下自由实现编辑,能有无数级别Undo和Redo,完全中国式! 软件的特点是: 一、丰富的制图功能: 能折线、矩形、椭圆、圆弧、文字框等最基本图形元件,具备简单的开放性接口,能插入其他编程语言中的各种可视化组件,诸如按钮、列表框、图片等。图形单元具有多种可变属性,线条的颜色、类型、宽度、箭头;背景的颜色、网纹;文字框的字型、字号、颜色、下划线类型、四边的类型、文字横向、纵向的对齐方式。编辑能力包括移动、剪贴、拷贝、粘贴、删除、层次、智能排版等,并具有多级Undo和Redo功能。表格功能包括分割、合并文字单元、插入、删除表格行、丰富的查找与替换、智能斜线、多种数字修饰方式、多种序列填充模式、把一组文字框定义成数组方便计算。视图能力包括窗口无级缩放、用来方便单元定位的栅格、放在工作区内的打印纸可以方便地改变放大率和打印区域。二、中国式的表格特点: 表格是典型的中国式,不同于国外电子表格,这里没有行列的概念,而代之以“单元组”的概念,不论其中的单元是否在同行、同列,表中任何一组单元都能用鼠标拖动到其他位置,单元组间可以建立任何复杂的算法,所以处理中国式的复杂表格例如表中套表最为简单。在表格被插入具体应用程序中后,仍然允许编辑某些文字单元。图形无级缩放,无需“模拟显示”,完全所见所得的编辑见面。可以用鼠标拖动打印纸,改变放大率和打印区域。三、能够开发基于图形的控件: Visual Graph能够轻松制作各种图形元件,并把它们放入元件库中以便重复使用,通过传递一系列数据参数,改变元件的反应。四、强大的编程能力: 能够编写各种算法,能够处理鼠标、键盘消息。例如在视图文件初始化时调用OnCreate、释放时调用OnDestroy、单击左键时调用OnClick等等。这里所用的语言采用最古典、最简单的语法结构,具有简单的数据类型,内置上百个常用函数(数学运算、图形、字符串、系统控制等),此外支持外挂函数库,使它能够直接调用其他开发环境提供的丰富功能。HTTP://WWW.VISUAL-GRAPH.COM

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧