量化软件下载:赫兹股票量化软件---创建绑定控件

在本文中,我将研究创建开发绑定到另一个图形元素的图形控件的功能。 假设我们有面板控件。 元素本身只是一个能够存储其它控件的容器。 当移动面板时,绑定到面板的所有控制对象也会随之移动。 面板是可把 GUI 元素分组在一起的基准对象。 由于终端没有可视化 GUI 构造函数,因此构造这些元素的任务只能分配给程序员。 该函数库则能够轻松开发此类 GUI 元素,因为我们只需指定所需图形元素的创建顺序即可将其置于面板内。 此外,还可以通过编程方式创建元素,并将其添加到面板中。

在本文中,我将继续开发所需的方法,因为我已经有了在另一个元素中创建元素的方法工件。 这些方法允许我们直接从面板创建一个新的绑定图形元素,并将其作为 GUI 程序的独立部分进行处理。 反过来,创建并附着到面板的每个此类图元,也可以在其自身内创建其它图元。 拥有这种功能的最小单元是窗体类对象。

此外,我还会稍微修改一下图形元素阴影对象,因为把它应用于任何有阴影的对象时会遇到一些逻辑错误。 例如,阴影仅绘制在图表的顶部,而它应叠加在对象上,位于该对象的投射上方。

改进库类

\MQL5\Include\DoEasy\Defines.mqh 拥有许多宏替换来指定某些函数库对象的默认值。

在画布参数模块中,将宏替换名称 CLR_FORE_COLOR 更改为 CLR_DEF_FORE_COLOR,为图形元素对象的非透明度添加默认值,并为阴影对象属性添加其它一些默认值:

 
 

//--- Canvas parameters #define PAUSE_FOR_CANV_UPDATE (16) // Canvas update frequency #define CLR_CANV_NULL (0x00FFFFFF) // Zero for the canvas with the alpha channel #define CLR_DEF_FORE_COLOR (C'0x2D,0x43,0x48') // Default color for texts of objects on canvas #define CLR_DEF_OPACITY (200) // Default color non-transparency for canvas objects #define CLR_DEF_SHADOW_COLOR (C'0x6B,0x6B,0x6B') // Default color for canvas object shadows #define CLR_DEF_SHADOW_OPACITY (127) // Default color non-transparency for canvas objects #define DEF_SHADOW_BLUR (4) // Default blur for canvas object shadows #define DEF_FONT ("Calibri") // Default font #define DEF_FONT_SIZE (8) // Default font size #define OUTER_AREA_SIZE (16) // Size of one side of the outer area around the form workspace #define DEF_FRAME_WIDTH_SIZE (3) // Default form/panel/window frame width //--- Graphical object parameters

函数库将在创建图形元素的方法中用到这些值。 一旦创建完毕,默认值始终可以被更改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值