GetString
GetString
可供简便地访问 MQL5 API ObjectGetString() 函数来获取绑定实例的图形类的字符串属性值。函数有两个调用版本:
无需正确性验证即可获取一个属性值
string GetString(
ENUM_OBJECT_PROPERTY_STRING prop_id, // 字符串属性标识符
int modifier=-1 // 限定符
) const参数
- prop_id
[输入] 图形对象的字符串属性值。
- modifier=-1
[输入] 限定符 (索引) 字符串特征。
返回值
字符串属性值。
验证处治的正确性再获取属性值
bool GetString(
ENUM_OBJECT_PROPERTY_STRING prop_id, // 字符串属性标识符
int modifier, // 限定符
string& value // 链接到变量
) const参数
- prop_id
[输入] 图形对象的字符串属性值。
- modifier
[输入] 限定符 (索引) 字符串特征。
- value
[输出] 容纳属性字符串值的变量引用。
返回值
true - 如果成功, false - 如果您未能获取一个字符串特征值。
例如:
//--- 例程 CChartObject::GetString
#include <ChartObjects\ChartObject.mqh>
//---
void OnStart()
{
CChartObject object;
string value;
//--- 通过简便方法获取图表名
printf("对象名是 '%s'",object.GetString(OBJPROP_NAME));
//--- 通过经典方法获取图表名
if(!object.GetString(OBJPROP_NAME,0,value))
{
printf("获取字符串属性出错 %d",GetLastError());
return;
}
else
printf("对象名是 '%s'",value);
for(int i=0;i<object.LevelsCount();i++)
{
//--- 通过简便方法获取水平线描述
printf("水平线 %d 描述是 '%s'",i,object.GetString(OBJPROP_LEVELTEXT,i));
//--- 通过经典方法获取水平线描述
if(!object.GetString(OBJPROP_LEVELTEXT,i,value))
{
printf("获取字符串属性出错 %d",GetLastError());
return;
}
else
printf("水平线 %d 描述是 '%s'",i,value);
}
}