//+------------------------------------------------------------------+ //| Cоздает прямоугольник по заданным координатам | //+------------------------------------------------------------------+ bool RectangleCreate(constlong chart_ID=0, // ID графика conststring name="Rectangle", // имя прямоугольника constint sub_window=0, // номер подокна datetime time1=0, // время первой точки double price1=0, // цена первой точки datetime time2=0, // время второй точки double price2=0, // цена второй точки constcolor clr=clrRed, // цвет прямоугольника constENUM_LINE_STYLE style=STYLE_SOLID, // стиль линий прямоугольника constint width=1, // толщина линий прямоугольника constbool fill=false, // заливка прямоугольника цветом < --- Есть только тут дальше в коде нетconstbool back=false, // на заднем плане constbool selection=true, // выделить для перемещений constbool hidden=true, // скрыт в списке объектов constlong z_order=0) // приоритет на нажатие мышью
{
//--- установим координаты точек привязки, если они не заданы
ChangeRectangleEmptyPoints(time1,price1,time2,price2);
//--- сбросим значение ошибки ResetLastError();
//--- создадим прямоугольник по заданным координатам if(!ObjectCreate(chart_ID,name,OBJ_RECTANGLE,sub_window,time1,price1,time2,price2))
{
Print(__FUNCTION__,
": не удалось создать прямоугольник! Код ошибки = ",GetLastError());
return(false);
}
//--- установим цвет прямоугольника ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr);
//--- установим стиль линий прямоугольника ObjectSetInteger(chart_ID,name,OBJPROP_STYLE,style);
//--- установим толщину линий прямоугольника ObjectSetInteger(chart_ID,name,OBJPROP_WIDTH,width);
//--- отобразим на переднем (false) или заднем (true) плане ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back);
//--- включим (true) или отключим (false) режим выделения прямоугольника для перемещений //--- при создании графического объекта функцией ObjectCreate, по умолчанию объект //--- нельзя выделить и перемещать. Внутри же этого метода параметр selection //--- по умолчанию равен true, что позволяет выделять и перемещать этот объект ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection);
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection);
//--- скроем (true) или отобразим (false) имя графического объекта в списке объектов ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden);
//--- установим приоритет на получение события нажатия мыши на графике ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);
//--- успешное выполнение return(true);
}
位置のコメントを できるだけ多く(31文字)使用すると、ツールチップにIDを表示する余地がなくなってしまうようです。
こんにちは。
頻繁にメールを送信するEAをお持ちの方はいらっしゃいますか?
1時間あたり、1日あたり、何本くらい?
5分間で16通のメールが送信され、数時間ログが空だったのですが、その後、書き込みが始まりました。
メール:スペースが足りない
このテーマについて経験のある人はいますか?
追伸:Gmailのgoogleは1秒ごとにメールを受け取れるようになっていますが、端末やサーバーのキューにメールがたまるのが早く、送信は遅くなると思われます(どのくらいでしょうか?)
そしてもう一度、アドバイザー/ターミナルは電子メールをキューに入れようとしていますが、キューはすでに一杯です!!!。
こんにちは。
頻繁にメールを送信するEAをお持ちの方はいらっしゃいますか?
1時間あたり、1日あたり、何本くらい?
5分間で16通のメールが送信され、数時間ログが空だったのですが、その後、書き込みが始まりました。
メール:スペースが足りない
このテーマについて経験のある人はいますか?
追伸:Gmailのgoogleは1秒ごとにメールを受け取れるようになっていますが、端末やサーバーのキューにメールがたまるのが早く、送信は遅くなると思われます(どのくらいでしょうか?)
そしてもう一度、アドバイザー/ターミナルは電子メールをキューに入れようとしていますが、キューはすでに一杯です!!!。
なぜかというと、PUSHはとっくの昔に発明されているからです。
ドキュメントに誤りがある
ドキュメントに誤りがある
ありがとうございます、修正します。
MetaEditorに_WIN64のような定義済みマクロがないことについて、ユーザーのフォーラムで何度も議論に遭遇しています。MetaEditorは32-64ビットのユニバーサルコードを同時に生成するので必要ない、というのが運営側の回答だった。
同時に、多くの人がhttps://www.mql5.com/ru/forum/225498/page2#comment_6401835 の アライメントを構造体にフィールドを付加して使っています
そして実際、既製の.dll(もう変更できない)を使用する場合、追加のアライメントなしではやっていけないのです。しかし、x86 と x64 では、この追加部分が異なって見えるかもしれません。つまり、TerminalInfoInteger( TERMINAL_X64 ) が動作しない .mq5 ファイルのコンパイル段階で構造体が定義されているので、_WIN64 アナログがまだ必要なのです。
あとは、余計な情報を入れないことです。些細なことを節約した結果、エラい目に遭う危険性がある
x64とx86で動作するGetOpenFileNameの開発者の例を紹介します。問題が解決されるかどうかを確認する
ここでは、開発者からの例として、x64とx86で動作するGetOpenFileNameを紹介します。問題が解決されるかどうかを確認する
実際、ほぼ2倍のコードが必要です。
.dllのついたプログラムはマスセグメント向けではありませんが
この場合も、分割コンパイルと2倍のコード量のどちらかを選択する必要があります。
や普遍性、そしてかなりのコードの複雑さがあります。
そのほか、_IsX64の原則に従って_WIN64のアナログを導入することもできます(ドキュメントには記載されていませんが、使用することは可能です)
さらに、プロジェクトに付属する.dllが1つしかない(x86のみ、またはx64のみ)ことが多く、そのプロジェクトの.mqhファイルに次のような行を指定することができない、ということもあります。
例えばこちらhttps://www.mql5.com/ru/forum/224745ヘルプの例
そこで質問ですが、mt4でOBJ_RECTANGLEの 塗りつぶしを変更するにはどうしたらいいのでしょうか?
Renat Fatkhullin:
Мы нацелены вообще скоро остановить разработки 32 битных версий Метатрейдера.
この時点で既知のランタイムエラーをすべて修正することをお勧めします。例えば、この#1841289 https://www.mql5.com/ru/forum/1111/page2025#comment_5766707 のように。
この演算子や他の演算子の動作は、メソッドに対応していません。メソッドに関連する演算子は構文上の糖分に過ぎませんが