WindowScreenShot 関数
この関数は、現在のチャートのスクリーンショットを拡張子 GIF形式のファイルで保存します。
ChartScreenShot関数でも厳密には違いますが同様の処理を行なうことができます。
データ型と構成・戻り値
bool WindowScreenShot(①, ②, ③, ④, ⑤, ⑥);
戻り値は、処理が成功した場合は true、それ以外は falseが返されます。
発生するエラーについては、GetLastError関数で取得することができます。
引数 [6]
WindowScreenShot関数は 6個の引数で構成されます。
番 号 | 引数名 | データ型 | 単位 | 初期値 | 説明 |
---|---|---|---|---|---|
① | filename | string | - | - | スクリーンショットのファイル名。拡張子名 gifも含めて指定してください。 |
② | size_x | int | pixel | - | スクリーンショットの幅(ピクセル単位)。 |
③ | size_y | int | pixel | - | スクリーンショットの高さ(ピクセル単位)。 |
④ | start_bar | int | - | -1 | スクリーンショットで最初に表示されるバーのインデックス。0の値が設定されている場合、現在の最初に表示されているバーが撮影されます。 初期値 -1は、インデントを考慮して、チャートの終わりのスクリーンショットが撮影されます。 |
⑤ | chart_scale | int | - | -1 | スクリーンショットの水平チャートスケール。 0(縮小)~5(拡大)の範囲で指定できます。 初期値 -1は、現在のチャートスケールが適用されます。 |
⑥ | chart_mode | int | - | -1 | チャート表示モード。 0:CHART_BAR(バー) 1:CHART_CANDLE(ローソク足) 2:CHART_LINE(終値線) 初期値 -1は、現在のチャートモードで表示されます。 |
取得したスクリーンショットは、使用しているMT4のメニューのファイルから「データフォルダを開く」のフォルダの「MQL4」→「Files」フォルダの中に保存されます。
使用例
WindowScreenShot関数によるスクリーンショットの保存
WindowScreenShot関数を使って現在のチャートのスクリーンショットを保存します。
コード
// WindowScreenShot関数によるスクリーンショットの保存
#property strict
void OnInit() {
bool tf1 = WindowScreenShot("Wscshot1.gif", 300, 200); // ①
bool tf2 = WindowScreenShot("Wscshot2.gif", 300, 200, 20, 5, 0); // ②
bool tf3 = WindowScreenShot("Wscshot3.gif", 300, 200, 20, 5, 2); // ③
Print("①スクリーンショットの成否:", tf1);
Print("②スクリーンショットの成否:", tf2);
Print("③スクリーンショットの成否:", tf3);
}
コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)
結果
次のように画像が「Files」フォルダの中に保存されます。
Wscshot1.gif
Wscshot2.gif
Wscshot3.gif