Fehler, Irrtümer, Fragen - Seite 1455

 

Hier ist das Drehbuch.

Ein Objekt erstellt. Zugewiesener Text.

Ich erkenne den Text selbst und die Größe.

Warum wird der Text selbst erkannt, aber die Größe nicht?

Dateien:
prob.mq4  1 kb
 
Vasyl Nosal:

Hier ist das Drehbuch.

Ein Objekt erstellt. Zugewiesener Text.

Erkennen des Textes selbst und der Größe.

Warum erkennt es den Text, aber nicht die Größe?

Ich habe es gerade überprüft.

Sogar die Farbe kommt richtig zurück.

Warum ist es nicht die Größe? Ist das eine Art Tabu?

Dateien:
prob.mq4  1 kb
 
Vasyl Nosal:

Ich habe es gerade überprüft.

Sogar die Farbe wird korrekt wiedergegeben.

Warum ist es nicht die Größe? Ist das eine Art Tabu?

Solange die Textbeschriftung nicht gerendert ist, ist die Größe unbekannt. Was ist hier nicht klar?
 
Vasyl Nosal:

Ich habe es gerade überprüft.

Sogar die Farbe wird korrekt wiedergegeben.

Warum ist es nicht die Größe? Ist das eine Art Tabu?

Da das Objekt keine Zeit zum Rendern hat, wollen Sie zu viel...

string name="probe";
/////
void OnStart()
  {
   func();
   func();

   ObjectDelete(name);

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void func()
  {
   ObjectCreate(0,name,OBJ_LABEL,0,0,0);
   ObjectSetString(0,name,OBJPROP_TEXT,name);

   Sleep(500);

   string text=ObjectGetString(0,name,OBJPROP_TEXT);

   int text_sizeX=int(ObjectGetInteger(0,name,OBJPROP_XSIZE));
   Alert(text," ",text_sizeX);

  }
//+------------------------------------------------------------------+
 

Opera-Browser

Oper 34.0

Mehr im Internet tun

Informationen zur Version

Version:34.0.2036.25- Aktualisierte Version von Opera wird verwendet
Update-Kanal:Stabil
System:Windows 10 64-Bit (WoW64)

Browser-ID

Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, wie Gecko) Chrome/47.0.2526.73 Safari/537.36 OPR/34.0.2036.25

Wenn Sie eine neue Nachricht mit SRC einfügen, wird der SRC-Text ausgeblendet.

Bei der Aktualisierung über SRC ist das in Ordnung.

 
Vladimir Pastushak:

weil das Objekt keine Zeit zum Rendern hat, Sie wollen zu viel...

Das ist cool.

Bitte helfen Sie mir jetzt, dies in einen Indikator zu implementieren und ihn ohne Ticks (am Wochenende) funktionieren zu lassen.

 
Slawa:
Solange die Textbeschriftung nicht gerendert wird, ist die Größe unbekannt. Was ist hier nicht klar?

Haben Sie eine Lösung für dieses Problem in einem Indikator, ohne Ticks?

Und ich habe es schon einmal gesagt. Es ist seltsam, dass Sie den Text selbst ohne Rendering erhalten können, aber nicht die Größe.

 
Vasyl Nosal:

Das ist cool.

Bitte helfen Sie mir jetzt, dies in den Indikator zu implementieren und ihn ohne Ticks (an Wochenenden) funktionieren zu lassen.

---

//+------------------------------------------------------------------+
//|                                                        proba.mq4 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
#property indicator_chart_window

string name="probe";
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   EventSetTimer(1 /*переодичность в секундах*/); // 
                                                  // или
//bool  EventSetMillisecondTimer( 
//int  milliseconds      // количество миллисекунд 
//);
   ObjectCreate(0,name,OBJ_LABEL,0,0,0);
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   return(rates_total);
  }
//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
  {
   ObjectSetString(0,name,OBJPROP_TEXT,name);
   string text=ObjectGetString(0,name,OBJPROP_TEXT);
   int text_sizeX=int(ObjectGetInteger(0,name,OBJPROP_XSIZE));
   Alert(text," ",text_sizeX);
  }
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   ObjectDelete(name);
   EventKillTimer();
  }
//+------------------------------------------------------------------+
 
Vladimir Pastushak:

---

Ich danke Ihnen. Aber es ist mühsam, die Größe des Textes zu kennen, um es gelinde auszudrücken.

Warum ist es möglich, die Textgröße ohne Rendering zu ermitteln, aber nicht die Textgröße?

 
Vasyl Nosal:

Ich danke Ihnen. Aber es ist mühsam, die Größe des Textes zu kennen, um es gelinde auszudrücken.

Warum können wir den Text selbst ohne Rendering kennen, aber nicht seine Größe?

Vielleicht ist der zu rendernde Text in einer Variablen gespeichert, aus der wir ihn abrufen, und Sie müssen ein Objekt mit Tausenden von Pixeln erstellen, um den Text zu erzeugen.

Und der Code, den ich Ihnen gegeben habe, ist nur ein Beispiel für eine Laufzeitimplementierung.