グラフウィンドウの管理の自由度を高めてほしい - ページ 6

 
barabashkakvn:
また、チャートオブジェクトで「十字線」を機能させるにはどうしたらいいでしょうか。つまり、チャートオブジェクトの上に十字線を引くと、ステータスバーにOHLCデータが表示されるのでしょうか。
試したことはないですね。ChartXYToTimePrice()とChartTimePriceToXY()という関数で可能かもしれませんね。
 
tol64:
試したことはないです。ChartXYToTimePrice()とChartTimePriceToXY()という関数で可能かもしれませんね。
ステータスラインへのアクセスがないだけで、可能なようです。チャートオブジェクトに完全な "クロスヘア "模倣を施し、通常のチャートと同様にステータスバーに表示されるようにしたい。
 
barabashkakvn:
それは可能だと思います。ただし、ステータスバーへのアクセスがないのが残念です。グラフオブジェクトに "Crosshair "を完全に模倣し、通常のグラフと同様にステータスバーに表示されるようにしてほしい。

そうなると、グラフィカルなオブジェクトはさらに発展させる必要があります。私は、グラフィカルオブジェクトとグラフィカルウィンドウの両方で、できるだけ多くの可能性を持つことに賛成しています。ただ、反対する理由はないと思います。;)

この問題に関して、何らかの機能が必要なケースをすべて集め、アンケートの最初の投稿で提示するのが良いと思います。世論調査は時間無制限であるべき。そうでないと、掲示板をあまり見ていない人が多いので、目に留まらないことが多いのです。

 
今すぐここに、何らかのウィンドウやグラフ機能が必要なケースをすべて入れておくことをお勧めします。話し合いましょう。長文投票を作って、このスレを全部投票に移せばいいと思うんだ。
 

とにかく、グラフウィンドウのコントロールを半端に置き換えたものがこちらです。

 

通常のチャート上にカーソルを移動させると、ステータスバーにOHLC値が 表示されますが、チャートオブジェクト上にカーソルを移動させると、OHLC値がステータスバーに変換されなくなります。MQLはステータス・バーにアクセスできないので、チャート・オブジェクトに代わるステータス・バーを考え出す必要があります。

今のところ、OBJ_LABELのテキストラベルが思い浮かびます。

 
barabashkakvn:

通常のチャート上にカーソルを移動させると、ステータスバーにOHLC値が 表示されますが、チャートオブジェクト上にカーソルを移動させると、OHLC値がステータスバーに変換されなくなります。MQLはステータス・バーにアクセスできないので、チャート・オブジェクトに代わるステータス・バーを考え出す必要があります。

今のところ、OBJ_LABELのテキストラベルが思い浮かびます。

OBJ_CHARTオブジェクトバーからステータスバーにOHLC値を転送することはできないとテクニカルサポートから回答がありました。そのため、独自のステータスバーを実装する必要があります。

独自のステータスバー

 

ステータスバー(OBJ_BITMAP_LABEL)の配置で、エラーが発生しました:オブジェクトは、その下に1ピクセルのバーを残してレンダリングされます。

OBJ_BITMAP_LABELの設定。

x=0,                      // координата по оси X
y=0,                      // координата по оси Y
CORNER_LEFT_UPPER,        // угол графика для привязки
ANCHOR_LEFT_UPPER,        // способ привязки

すなわち、オブジェクト・グラフィック・ラベルはチャートの下部に描かれ、座標中心はチャートの左下 隅にある。

実際には、グラフィックラベルオブジェクトは(0;0)座標で描画されるのではなく、このような設定により(0;1)座標で描画されます。

1ピクセルのバーを示す画像はこちらです。

OBJ_BITMAP_LABELのレンダリングが正しくない。

ファイル:
 

チャートオブジェクトにウィンドウを1つ追加したテンプレートを適用 し、追加ウィンドウのサイズを変更します。ターミナルを閉じたり開いたりすると、チャートオブジェクトは追加ウィンドウの高さをゼロにリセットします。これは正常なのか?


P.S. テストスクリプトを添付します。

ファイル:
test_script.mq5  13 kb
 
barabashkakvn:

チャートオブジェクトにウィンドウを1つ追加したテンプレートを適用 し、追加ウィンドウのサイズを変更します。ターミナルを閉じたり開いたりすると、チャートオブジェクトは追加ウィンドウの高さをゼロにリセットします。これは正常なのか?

端末を閉じたときに、グラフの状態がchrファイルに保存されます。 プログラム制御を目的としたグラフィックオブジェクトのすべてのプロパティが書き込まれるわけではありませんが、これは正常です。