最大および最小の可視引用符 - ページ 3

 
FirstVisibleBar()の開始値が 正しくないのはなぜですか?

グラフの幾何学的な 寸法は変更されない。



FirstVisibleBar( ) = BarsPerWindow( ) - 右端からのインデント;

BarsPerWindow( ) = const、期間とデータに依存せず。
 
стартовое значение FirstVisibleBar( ) はなぜ間違っているのでしょうか?
FirstVisibleBar( ) = BarsPerWindow( ) - 右端からインデント;

この数式はどこから入手したのですか?チャート上に最初に表示されるバーと、チャートウィンドウに収まる

バーの 数は、互いに無関係である。
 
インデントがない場合 FirstVisibleBar( ) = BarsPerWindow( ).

このような条件下では、FirstVisibleBar()は期間切り替え時に間違った開始値を持ったままです。
 
<br / translate="no"> インデントがない場合 FirstVisibleBar( ) = BarsPerWindow( ).

それがどうした?チャートを左右にスワイプして、最初(ホームボタンで)、FirsVisibleBar関数で生成される値を見ます。ただし、その前に必ずチャートの自動スクロールを無効にしてください。
 
非常に興味深い質問をbelkorから 受けた。

どのシステム機能、ライブラリに接続する必要があるか
- 現在のチャートの垂直および水平サイズをピクセル単位で取得します。
- 現在のチャートの最大と最小の可視光量を取得します。
- ウィンドウ内の展開されたチャートの総数を取得します。

MQL4言語と適切な関数を補完することは意味があるのでは?
 
チャートの右端からのインデントの有無を考慮して、現在のチャートウィンドウのバーの本数を返す関数が必要です。
 
<br / translate="no"> チャートの右端からのインデントの有無を考慮し、現在のチャートウィンドウにあるバーの数を返す関数が必要です。

なぜ?
インデントしているにもかかわらず、チャートウィンドウを完全に埋め尽くすことができます。
また、インデントがないにもかかわらず、チャートウィンドウが埋まっていない場合があります。
 
ユーザーは、右端からインデントされたチャートを 使用しています。このようなグラフには、何本のバーが表示されるのでしょうか? 時代、歴史、スクロール、その他全てから独立した、純粋な幾何学的 不変性。

個人的には20倍以上のジャンプやFirstVisibleBar()での遅延は許容できないと思っています。
 
開発者の皆さん、アドバイスをお願いします。

には、どのシステム関数とライブラリが含まれていなければなりませんか?

- 現在のチャートの垂直および水平サイズをピクセル単位で取得します。
- 現在のチャートの最大値と最小値を取得します。
- ウィンドウ内の展開されたチャートの総数を取得します。

MQL4言語と適切な関数を補完することは意味があるのでは?

ありがとうございます。
 
1.GetClientRect from user32.dll
2.特別な機能はありません。FirstVisibleBar()とBarsPerWindow()
3.を元に、自分で計算することができます。ウィンドウ内のグラフの総数」とは何ですか?インジケータを持つサブウィンドウであれば、組み込み関数のWindowsTotal()が役に立ちます。もし、クライアントターミナルのオープンチャートに関する ものであれば、直接判断することはできませんので、独自のDLLにある対応するWinAPI関数を通して判断してください。

今、私たちは何も言葉を付け加えません。