私のアプローチコアはエンジンです。 - ページ 171

 
Vasiliy Sokolov:

...

3)はい、名前によるアドレス指定は、すべてのパラメータを指定する必要があります。しかし、最も重要なことは、単一の一枚岩のイベントモデルが存在しないことです。自分のモデルが欲しいなら、大歓迎です。作るのは初歩的なことです。でも、タイマーがないとダメなんです。

イベントキューは、イベントを確実に処理するための一般的なアルゴリズムである。ユーザは何も作らない。ユーザが生成したイベントは勝手にキューに入れられる。キュー自体は99.9%は1つのイベントだけで構成されている。

まあ、実装は私と似ていますが、私の方がユーザーにとってはずっとシンプルです。


  • E_Window_Element(value); 要素に値を渡します。
  • E_Window_Element(); 要素の値を取得する。

  • E_Window_Element(M_COLOR, value);ベースカラーを 設定します。
  • E_Window_Element(T_COLOR, value); テキストの色を設定します。
  • E_Window_Element(F_COLOR, value); 枠の色を設定します。


  • E_Window_Element(STATE, ON); クリックされた状態を設定します。
  • E_Window_Element(STATE, OFF); 落ち込んだ状態を設定します。
  • E_Window_Element(STATE, LOCKED_ON); ロック状態を設定します。
  • E_Window_Element(STATE, LOCKED_OFF); 押された状態を設定します。
  • E_Window_Element(STATE, ON_H); フォーカスでクリックされたときの状態を設定します。
  • E_Window_Element(STATE, OFF_H); フォーカスに押された状態を設定します。


  • W_Window_name() ウィンドウを開く。
  • W_Window_name(close) ウィンドウを閉じる。


フォーム要素のラッパーの名前は、接続ファイルに自動的に出力され、すぐにインテリセンスに入ります。

Vasilyさん、MQLプログラムでエレメントやウィンドウのインテリセンス名を使うことはできますか?


ZS Vasilyさん、1つのラッパーが1つの要素に対していくつのアクションを行うか、注目してください。しかも、必要なパラメータはせいぜい2つだけ。あるいは、何もしない。

 
Igor Makanu:

...私はdataGridViewで大失敗を経験しました - 私はそれに3-5秒以上書き込むことができません)10x11テーブルは、テーブルを持つフォームが別のスレッドで実行されているが、すでにクリティカルです。

ZS: 5年前にDelphiでStringGridをMT4に取り付けましたが、特に問題はありませんでした。 しかし、MicrosoftのdataGridViewには問題があります。今日はSourceGridで実験してみます。フィードバックによると、dataGridViewよりも速いそうです

infragistics ultragridも試してみて ください。最高にクールです。トレーディングのパフォーマンスを向上させるGUIがあるとすれば、それはこのテーブルでしょう。

 
Dmitry Fedoseev:

...

ドミトリーMVCという アーキテクチャ・モデルがあります。私が提案したアプローチは、まさにそれについてです。だから、それを批判すると、そもそもMVCを批判することになり、Angular、ASP Net MVC、Ruby on Railsなどのソリューションも、あなたの意見では「ケツ」を通して作られた、専門家が注目する価値のない製品になってしまうのです。だから、私があなたと議論して自分の判断の正当性を証明したくない理由は、あなたにも明らかでしょう--無意味なことです。

 

私の場合、録音というアナログ

GuiController::SendEvent("AskLabel", TextChange, 0, 0.0, DoubleToString(ask, Digits()));

はエントリ

E_Trade_panel__AskLabel(DoubleToString(ask, Digits()));

この場合、特定の要素の名前を覚えておく必要はないんだ。E_と書くと項目のリストがポップアップするので、ウィンドウ名の頭文字を入力すると、特定のウィンドウの項目のリストに移動し、リストから目的の項目を選択することができます。

 

少なくとも100セル以上の表を、どうやってインテリジェンスなしでつなげるんだろう?何しろ、すべてのセルの名前を覚えなければならないのですから。

私の場合、各セルには行名と列名が自動的に付けられ、その選択はインテリジェンスによって行われます。ヴァシリイさんのバージョンでは、100個のセルのそれぞれの名称を正確に知る必要があります。

また、たくさんの要素と大きなテーブルを持つ複雑なウィンドウが10個あったとして、呼び出しの際の要素の名前付けにどれだけの時間を費やすことになるでしょうか。疲れてしまうので)。


また、異なるウィンドウ間で名前が同じであればどうでしょうか?

 
Реter Konow:

少なくとも100セル以上のテーブルをインテリセンスなしで接続するのはどうなんでしょうね?

MetaEditorのインテリセンスは、配列、構造体、基本型、メソッド、クラスも含め、C#のすべての変数で問題なく動作するので、Peterは知りません。

 
Vasiliy Sokolov:

MetaEditorのインテリセンスは、配列、構造体、基本型、メソッド、クラスも含め、C#のすべての変数で問題なく動作するので、Peterは知りません。

要素名は表示されますか?

 
Реter Konow:

要素名は表示されますか?

プロトタイプで、そうなっているんです。

:))

 
Vasiliy Sokolov:

そうでしょう、試作品で。

:))

ワシリー、君はわかってない。

GuiController::SendEvent("AskLabel", TextChange, 0, 0.0, DoubleToString(ask, Digits()));

ある要素の値を設定するには、その名前を送信します。フィールド "Ask" には "AskLabel" という名前がついています。 インテリセンスでは、どこに要素の名前が表示されるのですか?

 
Реter Konow:

ワシリー、君はわかってない。

ある要素の値を設定するには、その名前を送信します。フィールド "Ask" には "AskLabel" という名前がついています。 インテリセンスでは、どこに要素の名前が表示されるのですか?

ピーターさん、何か文句をつけたいような気がするんですが。

答えはノーです。インテリゲンチャはテキストエレメントを扱ったことがありませんし、今後も扱うことはないでしょう。でも、質問だけなら、同じ定義でインターレルを作っても全然問題ない。

s.s.ちなみに、あなたにも効きません。

__, EDIT,"Set lot", W,150,_,H,60,_,V_CURRENT,"1.00",