欢迎访问 外汇EA下载与MT4/MT5自动交易资源 - 聚合外汇EA、黄金EA、量化交易工具与自动化交易实战内容。
登录 注册

GetFontName - MetaTrader 5 库

author emer | 883 人阅读 | 0 人评论 |

GetFontName - library for MetaTrader 5

GetFontName - library for MetaTrader 5

在指标中使用文本图形时,通常需要实现在指标输入参数中更改其字体类型的可能性。

在这种情况下,最明显的解决方案是在输入参数中手动输入字体名称作为一行,但这不是很方便,而且容易出错。更有效的方法是使用基于的自定义变量枚举和下拉菜单列表。所提出的功能模块就是为了解决这个任务而设计的。

一个例子就足以能够与该库一起使用。假设我们有一个在图表一角显示文本标签的指标 (ChartInfo_Old.mq5)。以下是其输入参数:

//+---------------------------------------------------------+
//|指标输入参数                 |
//+---------------------------------------------------------+
输入 细绳文字=“真实的”;                          // 文本标签内容
输入 颜色  文本颜色=红色;                       // 文本标签颜色
输入 整数    字体大小=24;                         // 字体大小
输入type_font FontType=Font7;                  // 字体类型
输入 ENUM_BASE_CORNER  什么角落=角左下角;// 位置角
输入 单位Y_=1;                                 // 垂直位置

使用这样的代码,指标输入参数窗口将具有以下外观:

GetFontName - library for MetaTrader 5

为了使指标用户无需手动输入字体名称,我们应该对代码进行一些更改:

1. 借助 #include 指令,在指标输入参数的声明之前添加 GetFontName.mqh 文件的内容:

//+---------------------------------------------------------+
// type_font 枚举描述             |
// CFontName 类描述                   |
//+---------------------------------------------------------+
#include 

2. 替换FontType输入参数行:

输入 细绳字体类型=《快递新》;// 字体类型

与线

输入type_font FontType=Font7;// 字体类型

因此,我们稍微改变了变量用法的含义。前一个变量的含义必须在要在全局级别声明的新字符串变量中实现

细绳s字体类型;

然后字体类型指标代码中的变量必须替换为s字体类型。此操作必须仅在一处完成:

   设置T标签(0,“信息_标签”,0,什么角落,ENUM_ANCHOR_POINT2*什么角落),5,Y_,文本,文本颜色,sFontType,字体大小);

现在,s字体类型变量必须在OnInit()堵塞。只需几行代码即可完成此操作:

   CFontName FONT; 
   sFontType=FONT.GetFontName(FontType);

之后可以编译修改后的 ChartInfo.mq5 指标。

现在您可以在指标输入参数窗口中看到变化:

GetFontName - library for MetaTrader 5

在指标输入参数中使用字体变得更加方便。


附件下载

📎 getfontname.mqh (5.12 KB)

📎 chartinfo_old.mq5 (6.01 KB)

📎 chartinfo.mq5 (6.32 KB)

Source: MQL5 #644

🔐
请登录后参与评论
注册满12小时后评论,即可解锁附件下载
立即登录