Fehler, Irrtümer, Fragen - Seite 1375

 
Vladimir Pastushak:

...

Gebäude 872

Nach dem Neustart des Terminals verschwindet der TOOLTIP in allen grafischen Objekten ...

Wenn diese Option aktiviert ist, werden alle Tooltips angezeigt. Was mache ich falsch?
 
Artyom Trishkin:
Ich habe es überprüft, alle Tooltips werden angezeigt. Was mache ich falsch?

1. die Tooltips werden nicht gespeichert.

2. Die Person hat einem Objekt einen Tooltip zugewiesen, wenn es erfolgreich erstellt wurde. Da das Objekt bereits erstellt war, wurde nach den Bedingungen seines Programms kein Tooltip zugewiesen.

 
Slawa:

1. die Tooltips werden nicht gespeichert.

2. Eine Person hat einem Objekt einen Tooltip zugewiesen, wenn es erfolgreich erstellt wurde. Da das Objekt bereits erstellt war, wurde nach den Bedingungen seines Programms kein Tooltip zugewiesen.

Verstehe. Ich wusste nicht, dass Tooltips nicht gespeichert werden. Meine Funktionen sind so konstruiert, dass sie "fehlende" Funktionen neu zuordnen.
 
Artyom Trishkin:
Verstehe, mir war nicht klar, dass die Tooltips nicht gespeichert werden. Meine Funktionen sind so aufgebaut, dass sie "fehlend" neu zuweisen.
Ich wusste nicht, dass das Erstellen einer Schnittstelle im EA und das Signieren der Schaltflächen mit einem Tultip immer wieder durchgeführt werden muss, da der Tultip nach dem Neustart gelöscht wird...
 
Hat ein Signal geöffnet.(Wurde ein Signalanbieter). Die Wiederauffüllung der Bilanzen und ein Teil der Geschäfte werden dupliziert, was zu verzerrten Statistiken führt. Wie kann man das beheben?
 
Sergey Zhukov:
Hat ein Signal geöffnet.(Wurde ein Signalanbieter). Die Wiederauffüllung der Bilanzen und ein Teil der Geschäfte werden dupliziert, was zu verzerrten Statistiken führt. Wie kann ich das korrigieren?
Bitte senden Sie Ihre Anfrage an den Service Desk und geben Sie in Ihrer Anfrage detaillierte Informationen an.
 
Vladimir Pastushak:
Ich wusste nicht, dass man, wenn man eine Schnittstelle im EA erstellt und die Schaltflächen mit einem Tultip signiert, dies immer wieder tun muss, weil der Tultip nach einem Neustart gelöscht wird...
Es ist seltsam. Selbst wenn Sie die Schnittstelle nur in OnInit() erstellen, sind die Tooltips zum Zeitpunkt der Erstellung vorgeschrieben. Warum verschwinden sie?
 
Artyom Trishkin:
Seltsam. Selbst wenn Sie die Schnittstelle einfach in OnInit() erstellen, sind die Tooltips zum Zeitpunkt der Erstellung vorgeschrieben. Warum verschwinden sie?

Ich erstelle eine Schnittstelle mit Schaltflächen, und wenn ich sie erstelle, setze ich einen Tooltip. Wenn ich das Terminal neu starte, wird der Tooltip entfernt und ich muss ihn erneut eingeben...

Hier ist ein einfacher Code, der eine Schaltfläche mit einem Tooltip erstellt und nach dem Neustart verschwindet der Tooltip, probieren Sie es aus ...

//+------------------------------------------------------------------+
//|                                                      ProjectName |
//|                                      Copyright 2012, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
#property strict
//+------------------------------------------------------------------+
//| Создает кнопку                                                   |
//+------------------------------------------------------------------+
bool ButtonCreate(const long              chart_ID=0,               // ID графика
                  const string            name="Button",            // имя кнопки
                  const int               sub_window=0,             // номер подокна
                  const int               x=100,                      // координата по оси X
                  const int               y=100,                      // координата по оси Y
                  const int               width=50,                 // ширина кнопки
                  const int               height=18,                // высота кнопки
                  const ENUM_BASE_CORNER  corner=CORNER_LEFT_UPPER, // угол графика для привязки
                  const string            text="Button",            // текст
                  const string            font="Arial",             // шрифт
                  const int               font_size=10,             // размер шрифта
                  const color             clr=clrBlack,             // цвет текста
                  const color             back_clr=C'236,233,216',  // цвет фона
                  const color             border_clr=clrNONE,       // цвет границы
                  const bool              state=false,              // нажата/отжата
                  const bool              back=false,               // на заднем плане
                  const bool              selection=false,          // выделить для перемещений
                  const bool              hidden=true,              // скрыт в списке объектов
                  const long              z_order=0)                // приоритет на нажатие мышью
  {
   ResetLastError();
   if(ObjectCreate(chart_ID,name,OBJ_BUTTON,sub_window,0,0))
     {
      ObjectSetInteger(chart_ID,name,OBJPROP_XDISTANCE,x);
      ObjectSetInteger(chart_ID,name,OBJPROP_YDISTANCE,y);
      ObjectSetInteger(chart_ID,name,OBJPROP_XSIZE,width);
      ObjectSetInteger(chart_ID,name,OBJPROP_YSIZE,height);
      ObjectSetInteger(chart_ID,name,OBJPROP_CORNER,corner);
      ObjectSetString(chart_ID,name,OBJPROP_TEXT,text);
      ObjectSetString(chart_ID,name,OBJPROP_FONT,font);
      ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size);
      ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr);
      ObjectSetInteger(chart_ID,name,OBJPROP_BGCOLOR,back_clr);
      ObjectSetInteger(chart_ID,name,OBJPROP_BORDER_COLOR,border_clr);
      ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back);
      ObjectSetInteger(chart_ID,name,OBJPROP_STATE,state);
      ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection);
      ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection);
      ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden);
      ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);
      ObjectSetString(chart_ID,name,OBJPROP_TOOLTIP,"ROP_TOOLTIP");
     }
   return(true);
  }
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnTick()
  {
   ButtonCreate();
   ChartRedraw();
  }
//+------------------------------------------------------------------+
 
Vladimir Pastushak:

Ich erstelle eine Schnittstelle mit Schaltflächen, und wenn ich sie erstelle, setze ich einen Tooltip. Wenn ich das Terminal neu starte, wird der Tooltip entfernt und ich muss ihn erneut eingeben...

Hier ist ein einfacher Code, der eine Schaltfläche mit einem Tooltip erstellt und nach dem Neustart verschwindet der Tooltip, probieren Sie es aus ...

Geben Sie eine Überprüfung des Ergebnisses der Objekterstellung ein:

...
      ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection);
      ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden);
      ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);
      ObjectSetString(chart_ID,name,OBJPROP_TOOLTIP,"ROP_TOOLTIP");
     }
   else
     {
      Print("Error create button: ",GetLastError());
     }
   return(true);
...

Und wenn das Objekt bereits existiert, können Sie es nicht neu erstellen (Fehler 4200). Und wird daher nicht in der Lage sein, ändern Objekteigenschaften (und Tooltip insbesondere) anzuwenden.

Später hinzugefügt: Sie müssen nur die Logik überarbeiten, sonst wird bei jedem Tick ein Fehler ausgegeben.

 
Karputov Vladimir:

Geben Sie eine Prüfung des Ergebnisses der Objekterstellung ein:

Und wenn das Objekt bereits existiert, können Sie es einfach nicht neu erstellen (Fehler 4200). Und folglich werden Sie nicht in der Lage sein, Änderungen an Objekteigenschaften (und insbesondere an der QuickInfo) vorzunehmen.

Später hinzugefügt: Sie müssen nur die Logik überarbeiten, sonst wird bei jedem Tick ein Fehler ausgegeben.

Wir stellen alle Parameter ein und alle Parameter werden gespeichert, außer dem Typ...

Die Farbgröße wird nach dem erneuten Laden gespeichert, nur der Fetttyp wird gelöscht...