这两天,潜心钻研了一下编译程序,居然实现了用代码画出图形,并可由元件设置代码图元的各属性,进行直观修改即可得效果.
如上图,通过在库中设置一些自定义属性,并在代码图元中加入后,即可在图形窗口中进行各种属性的修改.其中代码图元的画图代码为:
PenData.Style = 5;
BrushData.BrushStyle = 1; // 渐变效果
BrushData.Color1 = Color1; // 渐变起始颜色
BrushData.Color2 = Color2; // 渐变结束色
Rectangle(-a, 0, a, h);
Ellipse(0, h, a, b);
BrushData.BackgroundStyle = 2; // 渐变效果
BrushData.GradientIndex = 1; // 渐变效果
Ellipse(0, 0, a, b);其中a,b,h, Color1, Color2为元件的自定义属性.
这下,连我自己都有点佩服我自己了!狂喜ing...,把软件发布更新上网,http://www.drgraph.com/viewthread.php?tid=22&extra=page%3D1可以下载,安装后打开附带工程中的Noname0.sch即可看到上图效果,并可随意编辑.
但没过多久,我发现一个巨大的缺陷:相关的组态图形软件,甚至于WORD,均提供图形对象的任意旋转,但我这里还不行,我想修改一下,发现工作量太大了,因为其中有许多地方,是用GDI方式画图,选择时需要HRGN,这一下要改,动作可就太大了.
沉痛之余,决定在暑假的时候,花上半个月时间,把这点完善过来,以支持任意角度的旋转.
唉,悔 不 当 初 呀!当初为何不想这些效果呢,看来还是需求分析得不到位.
作者通过自定义属性实现了使用代码绘制图形,并能够直观地调整图形属性。然而,在尝试添加图形旋转功能时遇到了挑战,尤其是由于使用了GDI绘图方式,使得功能的实现变得复杂。

6473

被折叠的 条评论
为什么被折叠?



