出力に関する関数

MQL4には出力に関する関数が複数存在します。


Comment関数



void Comment(
argument,
...
);

もっとも簡単に出力できる関数です。
引数に指定した内容をチャート左上に出力します。
引数にはあらゆる型の情報を指定することができ、カンマ区切りで複数指定することも可能です。
引数に改行コード(¥n)を加える事で複数行出力することも可能です。

Comment("Comment関数はここに出力されます。");

Comment関数サンプル画像

Comment関数の欠点としましては、最後に出力した内容しか出力されない点です。
1つのプログラム内で複数回Comment関数が実行された場合には、最後に実行したComment関数の内容のみ出力されます。
1つのチャート内で複数のEA・インジケーターがComment関数を使用している場合にも、最後に実行されたEA・インジケーターのComment関数のみ出力されます。


Print関数



void Print(
argument,
...
);

使い方はComment関数と同じですが、出力される場所が異なります。
Print関数で指定した内容は、ターミナルのエキスパートタブ内に出力されます。
バックテストの場合はテスターの操作履歴に出力されます。
Comment関数と違って個別に出力されますので、他のプログラムによって出力を妨害されません。

Print("Print関数はここに出力されます。");

Print関数サンプル画像


Alert関数



void Alert(
argument,
...
);

Alert関数は音とポップアップウィンドウを表示して出力します。
出力した内容はPrint関数と同じくターミナルのエキスパートタブにも出力されます。

Alert("Alert関数はここに出力されます。");

Alert関数サンプル画像

Alert関数の欠点としましては、バックテスト時には使えないことと、日本語が一部文字化けしてしまう点です。


MessageBox関数



int MessageBox(
string text,
string captions=NULL,
int flags=0
);

ポップアップウィンドウを表示して出力します。
Alert関数との違いは、ウィンドウのタイトルや表示するボタンに関しても指定することが可能です。
また、どのボタンがクリックされたかを引数で受け取ることも可能です。

MessageBox("MessageBox関数はここに出力されます。", NULL, 0);

MessageBox関数サンプル画像
TwitterでシェアFacebookでシェアGoogle+でシェアはてなブックマークに追加

TOPへ