Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Codeschnipsel (http://www.expert-advisor.com/forum/forumdisplay.php?f=292)
-   -   Code Snippets - Template auf alle Charts anwenden (http://www.expert-advisor.com/forum/showthread.php?t=5240)

Kronenchakra 26.10.16 00:17

Code Snippets - Template auf alle Charts anwenden
 
Dieses Scipt lädt ein Template in alle offenen Charts.
Es ist auch die Funktion 'ForceExtension' enthalten.
apply_period.mqh kommt demnächt, und auch einige StringFunktionen.
Code:

//+------------------------------------------------------------------+
//|                                              apply_template.mq5 |
//|                                Copyright© 2016 Ing. Otto Pauser |
//|                    modifiziertes Beispiel aus der Dokumentation |
//+------------------------------------------------------------------+
#property copyright "Copyright© 2016 Ing. Otto Pauser"
#property version  "1.00"
#property description "Simples Script um ChartApplyTemplate auf alle Charts anzuwenden"
#property script_show_inputs

#include  <Charts\Chart.mqh>;

input string template_name = "Standard";    // Templatename ('.tpl')

void OnStart()
{
  string filename=ForceExtension(template_name,"tpl");
  long currChart=ChartFirst();
  while(currChart>=0)
    {
      if(!ChartApplyTemplate(currChart,  template_name+".tpl"))
        {
          Print("Error:",GetLastError(),"  Template "+template_name+".tpl nicht gefunden ");
          break;
        }
      currChart=ChartNext(currChart);
    }
  PlaySound("ok");
}

//+------------------------------------------------------------------+
//| ForceExtension - Dateinamen bearbeiten / korrigieren            |
//+------------------------------------------------------------------+

string ForceExtension(string aName, string aExt)

  ushort sep=StringGetCharacter(".",0);
  string str[];
  StringSplit(aName,sep,str);  // keine Fehlerprüfung
  return(str[0]+"."+aExt);      // mehrere Punkte = Problem
}

Viel Erfolg damit


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:03 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum