ライブラリ: イージーキャンバス - ページ 17 1...10111213141516171819 新しいコメント Alexey Volchanskiy 2024.02.05 10:26 #161 Nikolai Semko #: 最新バージョン1.53 ニコラス、リブをダウンロードしたよ!そして、kodobaseのZIPには古いバージョン1.09のままです!!!!コメントを読んで直接ダウンロードしてよかった。私があなただったら、間違いなくMT5、mql5、mql5.com スレッドの改善提案に この未解決のバグについて投稿します! MT5, mql5, mql5.com предложения по улучшению. - Сделайте реалистичные предложения по улучшению платформы MT5, языка mql5 и сайта и услуг Mql5 Com. 2013.06.15www.mql5.com удерживая клавишу CTRL при перетаскивании точки привязки. Модифицировать OnChartEvent для обработки нажатия на кнопку. Всплывающее окно появляется автоматически после третьего символа или вы можете вызвать его с помощью CTRL SPACE Nikolai Semko 2024.02.05 21:10 #162 Alexey Volchanskiy #:ニコラス、リブをダウンロードしたよ!そして、kodobaseのZIPにはまだ古いバージョン1.09がある!!!!コメントを読んで直接ダウンロードしてよかった。私があなただったら、間違いなくMT5、mql5、mql5.com スレッドの改善提案に この未解決のバグについて投稿するでしょう! ありがとうアレクセイ!私はすでに 4年以上前に書いた。 Petr Vorob'ev 2024.03.06 13:00 #163 ニコラス、現在使用されているOBJ_RECTANGLE タイプのオブジェクトを置き換えるために、キャンドルにバインドされた動的に変化する "長方形 "を描画するために、あなたのライブラリを使用することは可能ですか? おそらく、そのような使用例があるのではないでしょうか? Nikolai Semko 2024.03.06 17:00 #164 Peter Vorobyev OBJ_RECTANGLE オブジェクトを置き換えるために、キャンドルにバインドされた動的に変化する "矩形 "を描画するために、あなたのライブラリを使用することは可能ですか? おそらく、そのような使用例があるのではないでしょうか? 矩形がそれほど多くなく(~<1000)、頻繁にサイズを変更する必要がない場合は、標準の CCanvas を使用できます。この場合、それぞれの矩形は価格と時間の座標に結びついた別のキャンバスになります。オブジェクトが無秩序に増殖しないように、「自分の後始末」をする必要がある。 オブジェクトがたくさんあって、それらが頻繁にプロパティを変更する場合は、このライブラリを使う方が簡単だ。 この場合、必要なプロパティを持つ仮想的な長方形である構造体の配列を作成し、チャートの変更イベントやプロパティの変更イベントが発生したときに、それらを可視チャート上に表示します。 これは最も生産的な変形であり、ここでのカンヴァス(ビットマップ)のオブジェクトは、画面全体に引き伸ばされた1つになります。しかし、この変形では、垂直方向と水平方向のスクロール中に、チャートからグラフィカル・オブジェクトがわずかに遅れます。同じライブラリTest_iCanvas.mq5 を参考にするとよいでしょう。この例では、テキストがバーにバインドされた半透明の長方形があります。半透明の矩形が重なったときに色が混ざるようにしたい場合は、そのような矩形用の関数が必要になります。iCanvas LineDA クラスの関数LineHorizontalA を使えば、すぐにできます。 ZY Test_iCanvas.mq5というサンプルはあまり適切ではありません。この例を書き直す必要がある。。では、ここと ここの 例をもっと見てください。しかし、これらの例では、時間あたりの価格へのバインディングはありません。そのためには、X関数と Y関数を 使用して、価格-時間座標をXY座標に変換する必要があります。 Petr Vorob'ev 2024.03.06 17:34 #165 通常のグラフィカル・オブジェクトのように、指定したプロパティを持つ矩形を描画(作成/移動/変更)できる矩形オブジェクトをライブラリに実装する予定はありますか? Nikolai Semko 2024.03.06 18:18 #166 Peter Vorobyev 矩形を描画(作成/移動/変更)できる矩形オブジェクトをライブラリに実装する予定ですか? おっしゃっている意味がよくわかりません。 矩形を描画するためのさまざまな関数があります。作成、移動、変更だけで十分です。 たしかに、サードパーティのコードで任意のオブジェクトを構造体やクラスとして作成し、その中に iCanvas や CCanvas というクラスを使って画面に出力するメソッドを記述することはできますが、グラフィック・ライブラリの中に可能な実装のバリエーションをすべて作る意味はありません。プリミティブだけが重要なのだ。もちろん、私にもこのライブラリの拡張機能がある。これはこのライブラリの何倍も大きいが、私以外には誰も理解できないだろう。自分のために書いたのだから。 Petr Vorob'ev 2024.03.06 19:41 #167 Nikolai Semko #:おっしゃっている意味がよくわかりません。 矩形を描くためのさまざまな機能がある。作成、移動、修正だけで十分です。 たしかに、サードパーティのコードで任意のオブジェクトを構造体やクラスとして作成し、その中にiCanvasやCCanvasというクラスを使って画面に出力するメソッドを書くことはできるが、グラフィック・ライブラリの中にありとあらゆる実装のバリエーションを作る意味はない。プリミティブだけが重要なのだ。もちろん、私にもこのライブラリの拡張機能がある。これはこのライブラリの何倍も大きいが、私以外には誰も理解できないだろう。自分のために書いたのだから。 このライブラリーをもっと詳しく知ってから、具体的な質問があれば、その時に聞きます。 Nikolai Semko 2024.03.06 23:13 #168 Peter Vorobyev #:ありがとうございます、よくわかりました。 ここに適切な EA の例があります: #include <Canvas\iCanvas_CB.mqh> //https://www.mql5.com/ja/code/22164 //+------------------------------------------------------------------+ int OnInit() { return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ void OnDeinit(const int reason) {} //+------------------------------------------------------------------+ void OnTick() { Draw(); } //+------------------------------------------------------------------+ void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) { if (id == CHARTEVENT_CHART_CHANGE || id == CHARTEVENT_MOUSE_MOVE) Draw(); } //+------------------------------------------------------------------+ void Draw() { static uint last = 0; // uint cur = GetTickCount(); // パフォーマンス最適化のために必要 if (cur-last<25) return; // テスターにとって特に重要 last = cur; // if (Canvas.tester) ChartChanged(); // テスターで正しく動作するように。 Canvas.Erase(0x00FFFFFF); // 正しいフォントを出力するためには、このようなマスクが必要です。 Canvas.CurentFont("Calibri Light", 16,16,0xFF000000); for (int shift = -1000; shift<=1000; shift+=50 ) { uint clr = (Canvas.Grad((shift+1000.0)/2000.0) & 0x00FFFFFF)|0x40000000; int bar = Round(Canvas.Bar(double(_MouseX+shift))); double price = iHigh(_Symbol,PERIOD_CURRENT,bar); int x = int(Canvas.X(double(bar))); int y = (int)_Y(price); Canvas.FillRectangleA(x,y,x+150,y-60,clr); _CommXY(x+5,y-55,"high = "+DoubleToString(price,_Digits)); _Comment("bar = "+(string)bar); _Comment("time = " + TimeToString(iTime(_Symbol,PERIOD_CURRENT,bar))); } Canvas.Update(); } 動作には iCanvas バージョン 1.54 が必要です。 ファイル: Test_iCanvas2.mq5 5 kb iCanvas_CB.mqh 73 kb Edgar Akhmadeev 2024.03.06 23:52 #169 Nikolai Semko #:動作にはiCanvasバージョン1.54が必要です。 Nikolai Semko#: 最新バージョン 1.53 私も興味があります。 Nikolai Semko 2024.03.06 23:55 #170 Edgar Akhmadeev #:私も同じことを考えていた。 すでに更新され、前の記事に添付されている 1...10111213141516171819 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
最新バージョン1.53
ニコラス、リブをダウンロードしたよ!そして、kodobaseのZIPには古いバージョン1.09のままです!!!!コメントを読んで直接ダウンロードしてよかった。私があなただったら、間違いなくMT5、mql5、mql5.com スレッドの改善提案に この未解決のバグについて投稿します!
ニコラス、リブをダウンロードしたよ!そして、kodobaseのZIPにはまだ古いバージョン1.09がある!!!!コメントを読んで直接ダウンロードしてよかった。私があなただったら、間違いなくMT5、mql5、mql5.com スレッドの改善提案に この未解決のバグについて投稿するでしょう!
ありがとうアレクセイ!
私はすでに 4年以上前に書いた。
おそらく、そのような使用例があるのではないでしょうか?
矩形がそれほど多くなく(~<1000)、頻繁にサイズを変更する必要がない場合は、標準の CCanvas を使用できます。この場合、それぞれの矩形は価格と時間の座標に結びついた別のキャンバスになります。オブジェクトが無秩序に増殖しないように、「自分の後始末」をする必要がある。
オブジェクトがたくさんあって、それらが頻繁にプロパティを変更する場合は、このライブラリを使う方が簡単だ。
この場合、必要なプロパティを持つ仮想的な長方形である構造体の配列を作成し、チャートの変更イベントやプロパティの変更イベントが発生したときに、それらを可視チャート上に表示します。
これは最も生産的な変形であり、ここでのカンヴァス(ビットマップ)のオブジェクトは、画面全体に引き伸ばされた1つになります。しかし、この変形では、垂直方向と水平方向のスクロール中に、チャートからグラフィカル・オブジェクトがわずかに遅れます。
同じライブラリTest_iCanvas.mq5 を参考にするとよいでしょう。この例では、テキストがバーにバインドされた半透明の長方形があります。半透明の矩形が重なったときに色が混ざるようにしたい場合は、そのような矩形用の関数が必要になります。iCanvas LineDA クラスの関数LineHorizontalA を使えば、すぐにできます。
ZY Test_iCanvas.mq5というサンプルはあまり適切ではありません。この例を書き直す必要がある。。では、ここと ここの 例をもっと見てください。しかし、これらの例では、時間あたりの価格へのバインディングはありません。そのためには、X関数と Y関数を 使用して、価格-時間座標をXY座標に変換する必要があります。
おっしゃっている意味がよくわかりません。
矩形を描画するためのさまざまな関数があります。作成、移動、変更だけで十分です。
たしかに、サードパーティのコードで任意のオブジェクトを構造体やクラスとして作成し、その中に iCanvas や CCanvas というクラスを使って画面に出力するメソッドを記述することはできますが、グラフィック・ライブラリの中に可能な実装のバリエーションをすべて作る意味はありません。プリミティブだけが重要なのだ。もちろん、私にもこのライブラリの拡張機能がある。これはこのライブラリの何倍も大きいが、私以外には誰も理解できないだろう。自分のために書いたのだから。
おっしゃっている意味がよくわかりません。
矩形を描くためのさまざまな機能がある。作成、移動、修正だけで十分です。
たしかに、サードパーティのコードで任意のオブジェクトを構造体やクラスとして作成し、その中にiCanvasやCCanvasというクラスを使って画面に出力するメソッドを書くことはできるが、グラフィック・ライブラリの中にありとあらゆる実装のバリエーションを作る意味はない。プリミティブだけが重要なのだ。もちろん、私にもこのライブラリの拡張機能がある。これはこのライブラリの何倍も大きいが、私以外には誰も理解できないだろう。自分のために書いたのだから。
このライブラリーをもっと詳しく知ってから、具体的な質問があれば、その時に聞きます。
ありがとうございます、よくわかりました。
ここに適切な EA の例があります:
動作には iCanvas バージョン 1.54 が必要です。
動作にはiCanvasバージョン1.54が必要です。
最新バージョン 1.53
私も興味があります。
私も同じことを考えていた。