エラー、バグ、質問 - ページ 2392 1...238523862387238823892390239123922393239423952396239723982399...3185 新しいコメント fxsaber 2019.02.26 22:03 #23911 グラフィカルなオブジェクトによる取引レベルの 実装を確認できる場所 端末そのものが行うことにできるだけ近づける必要があります。 Andrey Khatimlianskii 2019.02.26 23:09 #23912 fxsaber:グラフィカルなオブジェクトによる取引レベルの 実装を確認できる場所 端末そのものが行うことに、できるだけ近いものが必要。DASHDOT スタイルの水平線と OBJPROP_TEXT の記述。 fxsaber 2019.02.27 05:08 #23913 Andrey Khatimlianskii:DASHDOT スタイルの水平線と OBJPROP_TEXT の記述。ありがとうございます、textプロパティのことは知りませんでした。 うまくいかないんです。私は何を間違えているのだろう? void OnStart() { const string Name = __FUNCTION__; ObjectCreate(0, Name, OBJ_HLINE, 0, 0, SymbolInfoDouble(_Symbol, SYMBOL_BID)); ObjectSetString(0, Name, OBJPROP_TEXT, "12345"); ObjectSetString(0, Name, OBJPROP_LEVELTEXT, "12345"); } 文字が見えない。 Artyom Trishkin 2019.02.27 06:51 #23914 fxsaber:ありがとうございます、textプロパティのことは知りませんでした。 うまくいかないんです。私は何を間違えているのだろう? 文字が見えない。 チャートの設定で、グラフィカルオブジェクトのテキストキャプションの表示をオンにします。 fxsaber 2019.02.27 06:51 #23915 Artyom Trishkin: チャートの設定で、グラフィックオブジェクトのテキストキャプションの表示をオンにします。ありがとうございました。 Artyom Trishkin 2019.02.27 06:52 #23916 fxsaber:ありがとうございました。 プログラムでも可能です。 Vladimir Karputov 2019.02.27 08:12 #23917 このトピックに関連しないコメントは、「MQL4 MT4 MetaTrader 4初心者からの質問」に移動しました。 Ilyas 2019.02.27 09:25 #23918 Ilya Malev:MQL5 ME 2006 MQL4でも本来は同じコード、"関数「f」はボディを持たなければならない"メッセージをありがとうございました。 修正した場合、正しいエラーが表示されます。 削除済み 2019.02.27 14:34 #23919 Ilyas:ホームページの個人メッセージ はいつ修正されるのですか? 1.製品のアップデートメッセージが出続ける(ウェブサイトと端末で)。同じ製品です。読んでもまた出てくる、読んでもまた出てくる。 2.自分のメッセージは(端末で)ハイライト表示されます。自分が何を書いたか、誰に向けて書いたか、わかっている。自分のメッセージは、新着としてハイライトする必要はないのです。 Dmitriy Burlachenko 2019.02.28 07:09 #23920 皆さん、こんにちは。 複数のテキストラベルを1つの長い文字列にまとめようとしています。ティックがなく(休日)、通常モードで関数ObjectGetInteger(0,name,OBJPROP_XSIZE)が定期的に(常にではない)0を返すとき、なぜか「名前」オブジェクトが正確に存在します。テスターでは、エラーの発生頻度は低いですが、エラーも発生します。 エラーコードは0だが、値が取得できない。 開発者、専門家に質問です。なぜ?私のやり方が悪いのか、それともバグなのか? 2019.02.28 13:58:16.922 DBS_Bug3 (RTS-3.19,M4) DBS_Bug3: GetLastX: Не удалось получить размер объекта dbs_inf_11! Код ошибки: 0. Операция выполнена успешно. テスト用Expert Advisorのコードは以下の通りです。 //+------------------------------------------------------------------+ //| DBS_Bug3.mq5 | //| Copyright © 2019, DBS | //+------------------------------------------------------------------+ #include "Include\Errors.mqh" //+------------------------------------------------------------------+ //| Входные параметры эксперта | //+------------------------------------------------------------------+ sinput int Renew_Interval=5; //Интервал обновления, сек. sinput string iFontName="Tahoma"; //Название шрифта sinput int iFontSize=9; //Размер шрифта sinput color iColorBase=clrYellow; //Основной цвет sinput int iText_X=300; //Смещение от левого края графика, пикс. sinput int iText_Y=5; //Смещение от верхнего края графика, пикс. sinput string iName_pref="dbs_inf_"; //Префикс имени объектов текста //+------------------------------------------------------------------+ //| Глобальные переменные | //+------------------------------------------------------------------+ datetime LastCalculateTime=0; //время последнего расчёта //+------------------------------------------------------------------+ //| Обработчик события OnInit | //+------------------------------------------------------------------+ int OnInit() { EventSetTimer(Renew_Interval); //установка таймера ShowInfo(); //отобразить информацию return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Обработчик события Deinit | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { ObjectsDeleteAll(0,iName_pref); //удаляем все свои объекты текста ChartRedraw(); } //+------------------------------------------------------------------+ //| Обработчик событий таймера | //+------------------------------------------------------------------+ void OnTimer() { if(SymbolInfoInteger(_Symbol,SYMBOL_TIME)>LastCalculateTime) //проверка периода перерасчёта ShowInfo(); //вывести информацию } //+------------------------------------------------------------------+ //| Выводит на экран информацию про некоторые параметры эксперта | //+------------------------------------------------------------------+ void ShowInfo() { string t10="Прибыль: "+IntegerToString(MathRand())+" "; string t11="Убыток: "+IntegerToString(MathRand())+" "; string t12="Баланс: "+IntegerToString(MathRand())+" "; TextCreate(10,t10,iText_X,iText_Y); TextCreate(11,t11,GetLastX(10),iText_Y); TextCreate(12,t12,GetLastX(11),iText_Y); LastCalculateTime=TimeCurrent(); //запомним время последнего пересчёта } //+------------------------------------------------------------------+ //| Функция получает значение координаты X конца заданного объекта | //+------------------------------------------------------------------+ int GetLastX(int a_idx) { string name=iName_pref+IntegerToString(a_idx); //имя объекта long x=ObjectGetInteger(0,name,OBJPROP_XDISTANCE); long size=ObjectGetInteger(0,name,OBJPROP_XSIZE); if(size==0) PrintFormat("%s: %s: Не удалось получить размер объекта %s! Код ошибки: %i. %s.",EXPERT_NAME,__FUNCTION__,name,_LastError,ErrorDescription(_LastError)); return(int(x+size)); } //+------------------------------------------------------------------+ //| Создает объект "Текстовая метка" | //+------------------------------------------------------------------+ bool TextCreate(const int name_idx, //индекс имени объекта const string text, //текст const int x=0, //координата по оси X const int y=0, //координата по оси Y const color a_color=clrNONE) //цвет текста { string name=iName_pref+IntegerToString(name_idx); //формируем имя объёкта if(!ObjectCreate(0,name,OBJ_LABEL,0,0,0)) // создадим объект "Текстовая метка" { PrintFormat("%s: %s: Не удалось создать объект %s! Код ошибки: %i. %s.",EXPERT_NAME,__FUNCTION__,name,_LastError,ErrorDescription(_LastError)); return(false); } ObjectSetInteger(0,name,OBJPROP_XDISTANCE,x); //установим координаты привязки объекта ObjectSetInteger(0,name,OBJPROP_YDISTANCE,y); ObjectSetString(0,name,OBJPROP_TEXT,text); //установим текст ObjectSetString(0,name,OBJPROP_TOOLTIP,text); ObjectSetString(0,name,OBJPROP_FONT,iFontName); //установим шрифт текста ObjectSetInteger(0,name,OBJPROP_FONTSIZE,iFontSize); //установим размер шрифта color font_color=(a_color==clrNONE)?iColorBase:a_color; //если цвет не задан - используем установленный в настройках ObjectSetInteger(0,name,OBJPROP_COLOR,font_color); //установим цвет объекта ObjectSetInteger(0,name,OBJPROP_BACK,false); //отобразим на переднем (false) или заднем (true) плане ObjectSetInteger(0,name,OBJPROP_SELECTABLE,false); //включим (true) или отключим (false) режим перемещения объекта мышью ObjectSetInteger(0,name,OBJPROP_SELECTED,false); //включим (true) или отключим (false) режим выделенности объекта ObjectSetInteger(0,name,OBJPROP_HIDDEN,true); //скроем (true) или отобразим (false) имя графического объекта в списке объектов ChartRedraw(); //обновим график return(true); } //+------------------------------------------------------------------+ 追伸:ところで、前回の質問には、どの開発者も答えてくれていません。 ファイル: DBS_Bug3.mq5 13 kb 1...238523862387238823892390239123922393239423952396239723982399...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
グラフィカルなオブジェクトによる取引レベルの 実装を確認できる場所
端末そのものが行うことにできるだけ近づける必要があります。
グラフィカルなオブジェクトによる取引レベルの 実装を確認できる場所
端末そのものが行うことに、できるだけ近いものが必要。
DASHDOT スタイルの水平線と OBJPROP_TEXT の記述。
DASHDOT スタイルの水平線と OBJPROP_TEXT の記述。
ありがとうございます、textプロパティのことは知りませんでした。
うまくいかないんです。私は何を間違えているのだろう?
文字が見えない。
ありがとうございます、textプロパティのことは知りませんでした。
うまくいかないんです。私は何を間違えているのだろう?
文字が見えない。
チャートの設定で、グラフィックオブジェクトのテキストキャプションの表示をオンにします。
ありがとうございました。
ありがとうございました。
MQL5 ME 2006
MQL4でも本来は同じコード、"関数「f」はボディを持たなければならない"
メッセージをありがとうございました。
修正した場合、正しいエラーが表示されます。
ホームページの個人メッセージ はいつ修正されるのですか?
1.製品のアップデートメッセージが出続ける(ウェブサイトと端末で)。同じ製品です。読んでもまた出てくる、読んでもまた出てくる。
2.自分のメッセージは(端末で)ハイライト表示されます。自分が何を書いたか、誰に向けて書いたか、わかっている。自分のメッセージは、新着としてハイライトする必要はないのです。
皆さん、こんにちは。
複数のテキストラベルを1つの長い文字列にまとめようとしています。ティックがなく(休日)、通常モードで関数ObjectGetInteger(0,name,OBJPROP_XSIZE)が定期的に(常にではない)0を返すとき、なぜか「名前」オブジェクトが正確に存在します。テスターでは、エラーの発生頻度は低いですが、エラーも発生します。
エラーコードは0だが、値が取得できない。 開発者、専門家に質問です。なぜ?私のやり方が悪いのか、それともバグなのか?
テスト用Expert Advisorのコードは以下の通りです。
追伸:ところで、前回の質問には、どの開発者も答えてくれていません。