プログラミングを容易にするため、MetaEditorはホットキーにさまざまな最先端のツールを提供しています このツールを使用すると、コード記述のプロセスを高速化し、ナビゲーションを容易にし、エラーを防ぐことができます。
ここでは、次の機能について説明します。
プログラムコードを記述すると、MetaEditorは自動的に組み込みおよびカスタム関数、定数、変数、クラスメンバ、キーワードなどに対して可能な代替オプションを提供します。 コードの書き込みを高速化します。 たとえば、関数名の最初の文字を入力すると、すぐに適切な名前の関数の一覧が表示されます。 キーボードの矢印で適切なオプションを選択し、enter キーを押します。
オプションリストが大きすぎる場合は、関数名の文字をもう少し入力します。 リストを手動で呼び出すには、クリックします。Editメニューにあるリスト名 または Ctrl + スペースをエントリーした後、最初の名前の文字を入力します。
言語ヘルプを開かずにコードを記述するときに、関数のシグネチャを確認できます。 これを行うには、関数パラメータの説明を開始するかっこの後にカーソルを置きますEditメニューにあるパラメータ情報または Ctrl + shift + Spaceキーを押します。 パラメータと関数の戻り値の型に関する情報は、ツールヒントに表示されます。
上記の画像の関数については、以下の情報が表示されます。
このツールを使用すると、選択したクラスタイプや要素の定義(実装)に素早くアクセスすることができます。名前の上にカーソルを置いて コンテキストメニューの [Go to Definition(定義に移動)]またはAlt+Gを押します。定義が他のファイルにある場合は、そのファイルが開かれ、カーソルはファイルで対応する位置に置かれます。
また、この機能により、ナビゲーションでファイルをインクルードすることもできます。そのためには、インクルードが宣言されている行(#include指示文)のどこかにカーソルを置いて、上記のコマンドを実行します。
このツールを使用すると、変数やクラスメンバーの宣言に素早くアクセスできます。要素名の上にカーソルを置き、コンテキストメニューから[Go to Declaratio「(宣言文へ)]を選択します。宣言が他のファイルにある場合は、そのファイルが開かれ、カーソルはその対応する位置に置かれます。
このツールを使用すると、現在のファイル内のすべての宣言された関数の一覧を表示できます。 一覧を開くには、クリックします。Editメニューの関数の一覧または Alt + M
関数のパラメータは、名前の右側にかっこで囲んで指定します。 関数に移動するには、リスト内の名前をクリックします。 リスト内の各関数のアイコンは、次のようにマークされています。
プログラムコード内のコメントの操作を簡略化するには、EditメニューとStandardツールバー:を使います。
The [コメントのブロック] コマンド (Ctrl +/) は、現在の位置に1行のコメント文字を挿入します。
//--- |
The 関数ヘッダ (Ctrl +.) は、現在のカーソル位置に関数のコメント空白を挿入します。
//+------------------------------------------------------------------+
|
コードフラグメントは、プログラムの一部から別の部分に移動できます。 これを行うには、フラグメントを強調表示し、必要な位置(ドロップ) にドラッグします。
EditのAdvancedサブメニューには、ソースコードの編集を簡略化する一連のコマンドが用意されています。
ブックマークを使用すると、コードのさまざまな部分にすばやくジャンプすることができます。 ブックマークに必要な行をマークし、Edit Bookmarksメニューコマンドとソースコードのコンテキストメニューを使用して、移動します。
MetaEditorには、デジタル ID が割り当てられたブックマークという名前の関数もあります。 このようなブックマークを設定するには、Ctrl キーを押しながら0-9 をクリックします。 以前に設定したタブに移動するには、Alt キーを押しながら対応する番号をクリックします。
現在のファイル内の任意のコード行にすばやくジャンプするには、クリックします。[行に移動]Searchメニューまたは Ctrl + G キーを押します。 次のウィンドウが開きます。
ウィンドウには、現在のファイル内のコードを含む行の範囲が表示されます。 行に移動するには、その番号を入力し、クリックします。
スニペットは、特定の MQL4/MQL5構築を記述するソースコードの小さなテンプレートフラグメントです。 ソースコードを簡単かつ迅速に作成します。 たとえば、プログラムコードにワークピースをすばやく追加して、クラスまたはループを記述することができます。 これを行うには、キーワードを入力してください-' class ' または 'for '。 カーソルが変わります。つまり、スニペットを挿入できるようになりました。 tab キーを押すと、クラスまたは ' for ' ループのブランクがプログラムコードに応じて挿入されます。
アクティブなスニペットフィールド (ここでは名前、クラスコンストラクタ、デストラクタ) を切り替えるには、tab と Shift + tab を使用します。
1つのアクティブフィールドを変更すると、残りが自動的に変更されます。 たとえば、クラス名を変更すると、コンストラクタとデストラクタの名前も自動的に変更されます。 ' for ' ループ式のいずれかで変数名を変更すると、他の式の変数も変更されます。
スニペットを使用するシステムでは、既に記述されている構造、クラス、列挙体、メソッド、および関数も認識されます。 対応する構造体の説明の中にカーソルを置き、Ctrl + enter キーを押します。 その後、タブと Shift + tab キーを使用してメンバ (クラス、構造体、および列挙型) と引数 (メソッドと関数) 間を移動し、上記のようにまとめて編集できます。
次のスニペットは、現時点でサポートされています。
キーワード |
値 |
---|---|
#import |
インポート宣言。 |
OnBookEvent |
OnBookEvent ハンドラ。 |
OnCalculate |
OnCalculate ハンドラ。 |
case |
' ケース ' セレクタ。 |
OnChartEvent |
OnChartEvent ハンドラ。 |
class |
クラス宣言 |
OnDeinit |
OnDeinit ハンドラ。 |
do |
' while ' ループの宣言。 |
enum |
列挙体の宣言。 |
for |
' for ' ループの宣言。 |
if |
' if ' 条件の宣言。 |
その他 |
' else ' 条件の宣言。 |
OnInit |
OnInit handler. |
OnStart |
OnStart ハンドラ。 |
struct |
構造体の宣言。 |
switch |
' スイッチ ' セレクタ。 |
OnTester |
OnTester ハンドラ。 |
OnTesterInit |
OnTesterInit ハンドラ。 |
OnTesterPass |
OnTesterPass ハンドラ。 |
OnTesterDeinit |
OnTesterDeinit ハンドラ。 |
OnTick |
OnTick ハンドラ。 |
OnTimer |
OnTimer ハンドラ。 |
OnTrade |
OnTrade ハンドラ。 |
OnTradeTransation |
OnTradeTransation ハンドラ。 |
while |
' while ' ループの宣言。 |
Edit - Insertからコマンドの 使用すると、リソースファイルをすばやく挿入できるため、アプリケーションの開発が容易になります。
現在のポジションに #property ディレクティブを挿入し、直ちにすべてのリストを開きます。プログラムのプロパティ言語で使用できます。
プログラムリソースにイメージまたはサウンドファイルを追加するには、このコマンドを実行し、BMP または WAV ファイルを選択します (適切なファイルは MQL5ディレクトリに配置されている必要があります)。 選択したファイルへの適切なパスを持つ #resource ディレクティブは、プログラムの現在の位置に挿入されます。
#resource "\\Images\\image.bmp" |
このコマンドを実行して適切なファイルを選択すると、外部ライブラリまたは EX5/EX4 ファイルから関数をインポートできます (ファイルは MQL5ディレクトリに配置する必要があります)。 選択したファイルへの適切なパスを持つ #import ディレクティブのペアは、プログラムの現在の位置に挿入されます。
#import "..\Experts\SendNotification.ex5"
|
ディレクティブ間でインポートされた関数の説明を追加します。
インクルードファイルをプログラムコードに挿入するには、このコマンドを実行して MQH ファイルを選択します (適切なファイルは MQL5ディレクトリに配置されている必要があります)。 選択したファイルへの適切なパスを持つ #include ディレクティブは、プログラムの現在の位置に挿入されます。
#include <Arrays\Array.mqh> |
エキスパートアドバイザのテスト用の一連のパラメータをプログラムコードに挿入するには、このコマンドを実行してセットファイルを選択します (適切なファイルは MQL5ディレクトリに格納されている必要があります)。 選択したファイルへの適切なパスを持つ #property ディレクティブは、プログラムの現在の位置に挿入されます。
#property tester_set "\\Profiles\\Tester\\Moving Average.set" |
このコマンドを使用して、日付と時刻を必要な形式でコードに挿入します。コマンドを選択すると、インタラクティブなカレンダーが開きます。カレンダーで日付と時刻を選択すると、選択した形式で現在のプログラム位置に挿入されます。
このコマンドを使用して、必要な形式の色をコードに簡単に挿入します。コマンドをクリックすると、インタラクティブパレットが開きます。パレットから色を選択すると、MQL5関数で使用されるclrColor形式で現在の位置に挿入されます。
このコマンドを使用すると、バイナリ配列の形式で任意のファイルをプログラムテキストに追加できます。 コマンドを実行し、目的のファイルを選択します (適切なファイルは MQL5ディレクトリに配置する必要があります) プログラムの現在の位置に char 配列が挿入されます。
この関数は、EAやインジケーターとチャートテンプレートを転送することができます: 配列としてプログラムコードにテンプレートを挿入し、関数を使用してディスクに保存します。 その後、ChartApplyTemplate 関数を使用して、目的のチャートにテンプレートを適用できます。
//+------------------------------------------------------------------+
|
テキストファイルからプログラムコードにデータを追加するには、このコマンドを実行して TXT または CSV ファイルを選択します (適切なファイルは MQL5ディレクトリに配置されている必要があります)。 ファイルからのデータを含む必要なディメンションの文字列配列は、現在のプログラムの位置に挿入されます。
string data[][3]=
|
MetaEditorを使用すると、ソースデータの形式を変換できます。 目的のファイルを開き、その中のテキストを選択し、Edit - Convert メニューからコマンドのいずれかを実行します。
クリップボード追跡マネージャーでは最後に使用されたデータに迅速にアクセスできるので、ソースコードの利便性が向上します。ソースコードの任意の場所でAlt+Vを押して、メニューから以前にコピーした行のいずれかを選択すると、その場所に貼り付けられます。
対応するツールバーコマンドを使用するまたはエディタ設定によってして、追跡を有効/無効にできます。