こんにちは、
昨日、あなたの2回目の投稿を見たばかりなのに、なぜか見逃していました。 お疲れ様です。 私はあなたのダッシュボードをより機能的にするために、あなたの基本を受け継ぎ、それを拡張しました。 私のCreatePael関数を追加し、あなたのCreat DashBoardに追加パラメータをコピーして、背景色とボダーの色とスタイルを設定できるようにしました。 添付はスクリーンショットとmq5とmqhファイルです。
ラベル、ボタン、テキストボックスなどの関数を含む Text クラスを作成します。 ユーザーは Test クラスを直接使用できますが、より重要なのは、Movable DashBoard クラスが text クラスを継承し、各インスタンスがすべてのテキスト関数を使用できるようにすることです。特定の関数がダッシュボードに配置されると、それはダッシュボードの動きにリンクされます。 私は例として使用していないGUIヘッダーファイルを含んでいます。 おそらく最新バージョンを見つけるか、あるいはMQL5にすでに存在するものを見つける必要があるでしょう。
次回の記事を楽しみにしています。
ケープ・コッダ
ありがとうございました。
こんにちは、
私の記事を気に入っていただけてとても嬉しいです!ご意見ありがとうございます。
あなたの目標は私のコードが最初に設計されたものとは異なるようなので、あなたが目指しているものを達成するために私のコードを修正する必要はないと思います。しかし、動的に作成されたダッシュボードを移動可能にするために私のコードを利用することはできます。
チャート上のマウス・クリックを検出するには、ChartEvent、特にCHARTEVENT_CLICKを使用することができます。このイベントはマウス・クリックの座標を提供し、その場所に新しいダッシュボードを作成することを可能にします。そして、この新しく作成したダッシュボードを移動可能にするために、私のコードを適用することができます。
ChartEventについてもっと知りたい場合は、このシリーズの最初の部分、特に「Decoding Chart Events(チャート・イベントの解読)」と題されたセクションを参照することをお勧めします:ムーバブルGUIのビルディング・ブロック'です。
さらに、クラスを使用することを強くお勧めします。クラスを正しく使用すれば、タスクが単純化されます。クラスの概念に馴染みのない方は、私の記事「クラスの概念を理解する」を参考にしてください。
お役に立てれば幸いです!
- www.mql5.com
ありがとうございました。
CapeCoddahさん、こんにちは、
あなたのフィードバックは本当にうれしいです。私の文章の正確な目的は、あなたのような読者がコンセプトを取り入れ、独自の方法でそれを拡張するよう促すことです。あなたがまさにそうしてくれたという事実は、私の記事の有用性を再確認させてくれる。
ラベル、ボタン、テキストボックスなどを包含するTextクラスの作成に関するあなたの提案については、私の今度の記事が実際に同じような方向に踏み込んでいることは興味深い。私は、売買コマンドを実行し、ロットサイズをリクエストできる機能的なトレーディング・ダッシュボードを構築しています。
しかし、各ユーザーの多様なニーズを考えると、テキスト・クラスを作成することは普遍的に有益ではないかもしれないと思います。その代わり、読者の皆さんには、特定の要件に合わせたクラスを作成することをお勧めします。
あなたのファイルを見直したところ、あなたのGUIが、私がパート3で用意しているものとよく一致していることがわかりました。間もなくの公開を心待ちにしています。
次の記事で何が出てくるか、こっそりお見せしましょう:

そう、これは可動式のダッシュボードで、すべての要素が揃っている!
次回もご期待ください。また、積極的なご参加とご意見をありがとうございました。
それではまた!
こんにちは、CapeCoddah、
あなたのフィードバックは本当に嬉しい。私の文章の正確な目的は、あなたのような読者がコンセプトを取り入れ、あなた独自の方法でそれを拡張するようインスパイアすることです。あなたがまさにそうしてくれたという事実は、私の記事の有用性を再確認させてくれる。
ラベル、ボタン、テキストボックスなどを包含するTextクラスの作成に関するあなたの提案については、私の今度の記事が実際に同じような方向に踏み込んでいることは興味深い。私は、売買コマンドを実行し、ロットサイズを要求できる機能的なトレーディング・ダッシュボードを構築している。
しかし、各ユーザーの多様なニーズを考えると、テキスト・クラスを作成することは普遍的に有益ではないかもしれないと思います。その代わり、読者の皆さんには、特定の要件に合わせたクラスを作成することをお勧めします。
あなたのファイルを見直したところ、あなたのGUIが、私がパート3で用意しているものとよく一致していることがわかりました。その出版が間近に迫っていることを心待ちにしている。
次回の記事の内容をこっそりお見せしましょう:
そう、これは可動式のダッシュボードだ!
また、皆さんの積極的な参加とフィードバックに感謝します。
ハッピー・コーディング!
CapeCoddahさん、こんにちは、
あなたのフィードバックは本当にうれしいです。私の文章の正確な目的は、あなたのような読者がコンセプトを取り入れ、あなた独自の方法でそれを拡張するようインスパイアすることです。あなたがまさにそうしてくれたことで、私の記事の有用性が再確認されました。
ラベル、ボタン、テキストボックスなどを包含するTextクラスの作成に関するあなたの提案については、私の今度の記事が実際に同じような方向に踏み込んでいることは興味深い。私は、売買コマンドを実行し、ロットサイズを要求できる機能的なトレーディング・ダッシュボードを構築している。
しかし、各ユーザーの多様なニーズを考えると、テキスト・クラスを作成することは普遍的に有益ではないかもしれないと思います。その代わり、読者の皆さんには、特定の要件に合わせたクラスを作成することをお勧めします。
あなたのファイルを見直したところ、あなたのGUIが、私がパート3で用意しているものとよく一致していることがわかりました。その出版が間近に迫っていることを心待ちにしている。
次回の記事の内容をこっそりお見せしましょう:
そう、これは可動式のダッシュボードだ!
また、皆さんの積極的な参加とフィードバックに感謝します。
ハッピー・コーディング!
こんにちは、カイラシュ、
Textクラスのコンセプトは、トレーディング・ダッシュボードのパネルを作成するために使用する関数のツールボックスです。あなたのプレビューは、私のテキストクラスのメンバーのいくつかを示しています:ラベル、入力ボックス、ボタン、パネル、そしておそらくテキスト・パネル。ラベルを作成する詳細を、呼び出し可能なテキスト・クラス関数、CreateLabel(...)の中にカプセル化したいと思います。
例えば、ATRインジケータ、インジケータのクロスオーバー、取引開始、アクティブな取引のステータス、資金管理、ストップ・ロスやテイク・プロフィットの 管理などです。私が想定しているように、OnInit関数は各パネルの開発を呼び出すために使用され、OnTickは様々なパネルに更新機能を提供します。
GUI'という名前のテキスト・クラスを作って、矩形ラベル、ラベル、編集、ボタンなどすべてのオブジェクトを格納しようと考えています。
インジケーターや取引管理のような各タスクのために複数の、しかし独立したサブパネルを作成するというあなたのアイデアは、まさに将来の記事で私が意図している成果です。Zオーダーへの対応、異なるスクリーンサイズによるパネルサイズへの影響など、これを実現するための課題がないわけではありませんが、これらのハードルを一緒に乗り越えられると確信しています。
パネル・マネージャーのコンセプトも期待できそうだ。近いうちに実現できるはずだ。"
こんにちは、
私の記事を気に入っていただけて、とてもうれしいです!ご感想ありがとうございました。
あなたの目標は私のコードが最初に設計されたものとは異なるようなので、あなたが目指しているものを達成するために私のコードを修正する必要はないと思います。しかし、動的に作成されたダッシュボードを移動可能にするために私のコードを利用できることは確かです。
チャート上のマウス・クリックを検出するには、ChartEvent、特にCHARTEVENT_CLICKを使用することができます。このイベントはマウス・クリックの座標を提供し、その場所に新しいダッシュボードを作成することを可能にします。そして、この新しく作成されたダッシュボードを移動可能にするために、私のコードを適用することができます。
ChartEventについてもっと知りたい場合は、このシリーズの最初の部分、特に「Decoding Chart Events(チャート・イベントの解読)」と題されたセクションを参照することをお勧めします:ムーバブルGUIのビルディング・ブロック'です。
さらに、クラスを使用することを強くお勧めします。クラスを正しく使用すれば、タスクが単純化されます。クラスの概念に馴染みがない場合は、私の記事「クラスの概念を理解する」で基本を学ぶとよいだろう。
お役に立てれば幸いです!
ああ、あなたが困っていることがわかりました。お手伝いしましょう。
私のコードを少し修正することで、MultiDashという名前のExpert Advisor (EA)を作成しました。
参考までに以下に添付します。私のコードでわからないことがあれば、遠慮なくご質問ください。喜んでお手伝いさせていただきます。
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
新しい記事「MQL5のインタラクティブGUIで取引チャートを改善する(第2回):移動可能なGUI (II)」はパブリッシュされました:
MQL5で移動可能なGUIを作成するための詳細なガイドで、取引戦略やユーティリティでの動的なデータ表現の可能性を引き出しましょう。オブジェクト指向プログラミングの基本原理を理解し、同じチャート上に単一または複数の移動可能なGUIを簡単かつ効率的に設計実装する方法を発見してください。
同じようなダッシュボードを、今回は.mqhファイルを使ってゼロから作る旅に出ましょう。必要であれば、以前のコードの一部を拝借します。コードファイルを効率的に整理するために、「Movable Dashboard MQL5」という適切な名前の新しいフォルダを作成します。
次に、2 つの新しいファイルを生成します。Movable_Dashboard_MQL5.mq5ファイル(これが主要な.mq5ファイルとなる)と、ダッシュボードを移動可能にするコードを格納するGUI_Movable.mqhファイルです。これらのファイルに適切な名前を付けることは、複数のファイルを簡単に管理するために非常に重要です。
まず、メインの.mq5ファイル(Movable_Dashboard_MQL5.mq5)のOnInit()内のObject Createメソッドを使用して、200x200の白いダッシュボードを作成します。
結果:
作者: Kailash Bai Mina