クラウドソーシングによるGUI。オープンベータテストを実施。 - ページ 30

 
Alexandr Andreev:

なぜかというと、フィールドが埋められ、入力値がテンプレート型であるときに呼び出される関数によっても実装可能だからです...。のすべてです。紐のようなものでも...。フィールドの高速充填が行われないことに変わりはない

入力欄だけではありません。例えば、チェックボックスの現在の値を取得したい、つまりチェックされているかどうかをチェックしたい。
または、チェックアウトリストのどの項目が選択されているかを確認します。
または、スライダーノブがどのマークについているかを調べます。
あるいは、プログレスバーがどのような値を持っているか。
といった具合に。
ファンクション エレメントを呼び出すと、いつでもその値を取得できるだけでなく、新しい値を設定することができます。
また、色、状態(押された、押された、ロックされた)を設定することができます。1つのエレメント関数の呼び出しで、ユーザーコードの任意の場所で、これらのアクションを行うことができます。
 
Реter Konow:
入力欄だけではありません。 例えば、チェックボックスの現在の値を取得する、つまりチェックされているかどうかをチェックする必要があります。
または、ポップアップリストでどの項目が選択されているかを調べる。
または、スライダーノブがどのマークについているかを調べます。
あるいは、プログレスバーがどのような値を持っているか。
といった具合に。
要素関数を呼び出す ことで、いつでもその値を取得できるだけでなく、新しい値を設定することができます。
または、色、状態(押された、押された、ロックされた)。1つのエレメント関数の呼び出しで、ユーザーコードのどのポイントでもこれらのアクションが可能になります。

これらもすべて、設定という事実に関する関数呼び出しによって簡単に行うことができる。そして、プログラマーの仕事をさらに進める。


環境面では、ブックマークやウィンドウに一定の呼び出し基準を設けてほしい(関数名は変えずに、どのコードでこの関数が必要になるかわからないので)。また、カーソルを合わせると色が変わり、スタイルを選択することができます。

つまり、メニューのプロトタイプを1つ作成し、それを使って別のメニューを作成する必要があるのです。もし、環境を利用するとしたら...。

ここで、メタクォートでは、一部のコード断片にずれが生じることがあります。

ここでは、クリック/ホバーすると表示される動的なインターフェイスを追加することが望ましい......。しかも、それは超小さい部分です。

 
Реter Konow:
入力ボックスだけではありません。 例えば、チェックボックスの現在の値を取得したい場合、つまりチェックボックスがチェックされているかどうかを確認したい場合です。
または、ポップアップリストでどの項目が選択されているかを調べる。
または、スライダーノブがどのマークについているかを調べます。
あるいは、プログレスバーがどのような値を持っているか。
といった具合に。
要素関数を呼び出す ことで、いつでもその値を取得できるだけでなく、新しい値を設定することができます。
または、色、状態(押された、押された、ロックされた)。1つのエレメント関数の呼び出しで、ユーザーコードのどのポイントでもこれらのアクションが可能になります。

しかし、それ以外にも、何かが変更されたときにイベントを生成 するCallback-functionsという 考え方があります。例えば、フォーム上にチェックボックスがあり、その状態がいつ変化するかを知る必要があります。選択肢1:一定時間ごとにGUIに問い合わせを行い、このボックスの値を取得し、値が異なれば、ボックスが変更されたことになる。この場合、常に定期的にポーリングするために一部のリソースが浪費されることになり、費用対効果は高くありません。

例えば、チェックボックスをクリックすると、その状態が変化し、状態が変化すると同時に、コントロールのタイプ、名前、値を含むイベントが生成されるように、リソースの浪費を避けるために、ピギーバック関数と呼ばれるものが考案されました。そして、このイベントのサブスクリプションでは、チェックボックスの値が変更されるのを待つために必要なコードが既に実行されます。これをイベントモデルと呼ぶ。

 
Alexandr Andreev:

このようなことも、設定という事実上の関数呼び出しによって簡単にできるようになる。そして、プログラマーの仕事となる。


環境については、あらゆる種類のタブやウィンドウで(関数名を変えずに)呼び出すための一定の基準を設けてほしいです。また、カーソルを合わせると色が変わり、スタイルを選択することができます。

つまり、メニューのプロトタイプを1つ作成し、それを使って別のメニューを作成する必要があるのです。もし、環境を利用するとしたら...。

ここで、メタクォートは、いくつかのコードフラグメントで末尾が切れてしまうことがあります。

ここで、クリック/ホバーしたときに表示される追加のインターフェイスを変更することが望ましいのですが......。しかも、それは超小さい部分です。

OKです。数時間後に、Alexeyが提案した簡単な例を載せますね。最初の例よりずっとわかりやすくなるはずです。
 
Алексей Барбашин:

また、何かが変わったときにイベントを発生 させるコールバック関数という 概念もある。例えば、フォーム上にチェックボックスがあり、その状態がいつ変化するかを知る必要があります。選択肢1:一定時間ごとにGUIに問い合わせを行い、このボックスの値を取得し、値が異なれば、ボックスが変更されたことになる。この場合、常に定期的にポーリングするために一部のリソースが浪費されることになり、費用対効果は高くありません。

例えば、チェックボックスをクリックすると、その状態が変化し、状態が変化すると同時に、コントロールのタイプ、名前、値を含むイベントが生成されるように、リソースの浪費を避けるために、ピギーバック関数と呼ばれるものが考案されました。そして、このイベントのサブスクリプションでは、チェックボックスの値が変更されるのを待つために必要なコードが既に実行されます。これをイベントモデルと呼ぶ。

まあアレクセイ、古いメモリからタイマーを介してEAにポーリングされる外部GUIの話だろう。当時はコールバックが必要だったんですね。現在は、すべてが1つのEA内で行われ、外部GUIの代わりに内部GUIがあります。その独自性。

そのため、エンジンはファイルでつながっているのです。Expert Advisorにネイティブなインターフェースにするため。

ちなみに、このエンジンはロシア語で書かれているのが良いですね。Expert Advisorと接続する際に、変数名の一致が何度も発生することが想像できるでしょうか。
 
Реter Konow:
まあアレクセイ、古いメモリからタイマーを介してEAにポーリングされる外部GUIの話だろう。当時は、コールバックが必要だったんですね。現在は、すべてが1つのEA内で行われ、外部GUIの代わりに内部GUIがあります。その独自性。

ピーター 実は、コルベは「古い記憶」ではなく、GUIに関係なく、外部・内部を問わず、あらゆるインタラクションの常識なんです。 そして、それがどこで起こるかは問題ではなく、要は「どう起こるか」が重要なんです。コルベックはタイマーじゃない!

ビデオを待っているところ...

 
Алексей Барбашин:

ピーター:コルバイクは "古い記憶 "ではなく、あらゆるインタラクションの共通実務です。 GUIに関係なく、外部か内部かは関係ありません。 また、どこでそれが起こるかはまったく問題ではなく、重要なのはどのように起こるかです。

ビデオを待っているところ...

私もそう思います。1つのEAの中だけは、必要ありません。
 
Реter Konow:
そういやAlexey、古い記憶だとEAからタイマーで外部GUIがポーリングされるって話だったね。当時は、コールバックが必要でした。現在では、すべてが1つのExpert Advisorの内部で行われ、外部GUIの代わりに内部GUIがあります。その独自性。

そのため、エンジンにはファイルが差し込まれている。Expert Advisorにネイティブなインターフェイスにするため。

他人の変数を覚えるより、自分の変数を覚える方が簡単です。

一般的なコードでは、メモリチャンクを渡して複数の値を一度に処理することで実装されるグローバル変数を すべて最低限持つ必要があります。それは、...........................理にかなっている。....HHは、モノに直接リンクしている言葉をカットするようにしました。

一般的には、通常のコロバックを使用する方が簡単です。

 
Alexandr Andreev:

まあ、他人の変数を覚えるより、自分の変数を覚える方が簡単ですからね。

一般に、コードには最小限のグローバル変数が 必要で、すべてメモリのチャンクを渡して実装し、複数の値を一度に処理する必要があります。それは、...........................理にかなっている。 ....HHは、モノに関係する言葉を直接切り取るようにしました。

一般的には、普通のコルバックを使う方が簡単です。

PS あなたはまだそこにデザインの仕事をたくさん持っています。

 
Реter Konow:
私もそう思います。1つのEAの中だけは、必要ありません。

うーん...。では、素朴な疑問ですが、チェックボックスのステータスが変わったかどうかを知るにはどうしたらよいのでしょうか?