【MQL4勉強プログラミング】ウィンドウ番号を取得する方法は?

indowFind()関数は、指定したインジケーターが描画されているウィンドウのウィンドウ番号を取得するために使用します。

WindowFind()関数は、以下のように定義されています。

int WindowFind(
string name
);

引数の意味は、以下のとおりです。

  • string name
    描画されているインジケーターの名前を指定します。
    名前は、IndicatorShortName()関数で設定されたものになります。
    なお、IndicatorShortname()関数の詳細については「こちら」を参照してください。

戻り値

引数に指定したインジケーターが見つかった場合は、当該インジケーターが描画されているウィンドウのウィンドウ番号が返され、見つからなかった場合は「-1」が返されます。

注意点

init()関数を実行する際に、カスタムインジケーターが自分自身を検索する場合には、「-1」が返されます。

具体例

「MACD(12,26,9)」が描画されているウィンドウのウィンドウ番号を取得したい場合は、以下のように記述します。


#property strict

#property show_confirm

void OnStart()
{
  int Window_Index = WindowFind(“MACD(12,26,9)”);
  
  Print(“Window No. is “,Window_Index);
}