MQLSetInteger
MQL4プログラム環境のMQL_CODEPAGEプロパティの値を設定します
関数書式:
void MQLSetInteger(
int property_id
int property_value
);
■引数
引数名 |
初期値 |
I/O |
詳細 |
property_id |
- |
In |
プロパティID。
MQL_CODEPAGEのみ指定可能。他プロパティは変更出来ません。 |
property_value |
- |
In |
プロパティ値。
コードページ定数のいずれかを指定出来ます。 |
■戻り値
無し
■備考
この関数は実行中のMQL4プログラムの現在のコードページを変更することを目的としています。
これはクライアントターミナルがプログラムのコンパイル時に使用されたものとは異なるデフォルトのコードページを設定するときに役立ちます。
たとえば、MQL4プログラムがスペイン語のコンピューターでコンパイルされ、中国語のマシンで実行されているとします。
プログラムがコンパイルされて実行されているマシンの言語設定が異なる場合、メッセージの出力または値の取得時にエラーが発生する可能性があります。
このようなエラーは、
PrintFormat、Print、Comment、Alert、MessageBox、SendFTP、SendMail、SendNotification、iCustom、およびオブジェクト名、グローバル変数名などを引数として使用する機能に関係します。
実行中のプログラムで使用されている文字列のコードページへ明示的に変更するには、
必要なコードページを2番目の引数として渡してMQLSetInteger()を呼び出す必要があります。
この関数は、ユーザーに表示されるメッセージのローカライズに役立ちます。
第1引数がMQL_CODEPAGEしか指定出来ないのであれば、引数で渡せるようにしている意味がちょっと良く分かりません。
追加された関数で関数名も汎用性がある名称なので、今後指定できるプロパティIDが増えた時の為にこのような引数指定をしているのかもしれません。