Diskussion zum Artikel "Grafische Interfaces X: Text Edit Box, Bild Slider und einfache Controls (build 5)" - Seite 2

 
maj:

Hallo

in den letzten beiden Artikeln sehen wir keine mql4-Dateien

Ich weiß, dass mt4 nicht mehrere Charts und solche Dinge unterstützt

aber werden Sie ein Update für mql4 hochladen?

Ich meine für die neuesten Funktionen wie Text bearbeiten und Maus und CPU peformanc

MT4 Version der Bibliothek wird nicht mehr aktualisiert werden.
 
Anatoli Kazharski:
Die MT4-Version der Bibliothek wird nicht mehr aktualisiert.

Drücken Sie zum Wechsel zu MQL5

 

Tol, unnötig (oder etwas, das anstelle von unnötig fehlt) in TextEdit.mqh

//+------------------------------------------------------------------+
//| Erzeugt eine Gruppe von Texteingabefeld-Objekten |
//+------------------------------------------------------------------+
bool CTextEdit::CreateTextEdit(const long chart_id,const int subwin,const string label_text,const int x,const int y)
  {
//--- Beenden, wenn es keinen Zeiger auf das Formular gibt
   if(!CElement::CheckWindowPointer(::CheckPointer(m_wnd)))
      return(false);
//--- Initialisierung von Variablen
   m_id          =m_wnd.LastId()+1;
   m_chart_id    =chart_id;
   m_subwin      =subwin;
   m_x           =x;
   m_y           =y;
   m_x_size      =(m_x_size<1 || m_auto_xresize_mode)? (m_anchor_right_window_side)? m_wnd.X2()+m_x-m_auto_xresize_right_offset : m_wnd.X2()-m_x-m_auto_xresize_right_offset : m_x_size;
   m_y_size      =m_edit_y_size;
   m_label_text  =label_text;
   m_area_color  =(m_area_color!=clrNONE)? m_area_color : m_wnd.WindowBgColor();
//--- Einzüge vom Endpunkt aus
   CElement::XGap((m_anchor_right_window_side)? m_x : m_x-m_wnd.X());
   CElement::YGap((m_anchor_bottom_window_side)? m_y : m_y-m_wnd.Y());
//--- Erstellen eines Elements
   if(!CreateArea())
      return(false);
   if(!CreateIcon())
      return(false);
   if(!CreateLabel())
      return(false);
   if(!CreateEdit())
      return(false);

   if(!CreateEdit())
      return(false);

   Print(__FUNCTION__," > CreateEdit()");
   if(!CreateTextSelectPointer())
      return(false);
//--- Element ausblenden, wenn das Fenster ein Dialogfeld ist oder minimiert wurde
   if(m_wnd.WindowType()==W_DIALOG || m_wnd.IsMinimized())
      Hide();
//---
   return(true);
  }
//+------------------------------------------------------------------+

Und es ist irgendwie seltsam, eine Textbeschriftung für ein Eingabefeld verwenden zu können, aber nicht in der Lage zu sein, seine Schriftart und Größe einzustellen. Vielleicht suche ich an der falschen Stelle? Oder einen Hinweis, wie man das machen kann, ohne in den Code einzudringen und ohne eigene Methoden hinzuzufügen.

 
Artyom Trishkin:

Tol, unnötig (oder etwas, das anstelle von unnötig fehlt) in TextEdit.mqh

Und es ist irgendwie seltsam, eine Textbeschriftung für ein Eingabefeld verwenden zu können, aber nicht in der Lage zu sein, seine Schriftart und Größe einzustellen. Vielleicht suche ich an der falschen Stelle? Oder sagen Sie mir, wie man das macht, ohne in den Code zu gehen und ohne eigene Methoden hinzuzufügen.

1. natürlich unnötig. Sie müssen es löschen.

2. Im nächsten Update wird es für jedes Element möglich sein, seine eigene Schriftart und -größe einzustellen.

Ich arbeite bereits an dem nächsten Artikel. Wahrscheinlich wird er nächste Woche veröffentlicht.

 
Anatoli Kazharski:

1) Er ist überflüssig. Sollte gestrichen werden.

2. Im nächsten Update wird es für jedes Element möglich sein, seine eigene Schriftart und -größe einzustellen.

Ich arbeite bereits an dem nächsten Artikel. Wird wahrscheinlich nächste Woche veröffentlicht.

1. Ich habe es vor langer Zeit gelöscht - ich hatte gerade Zeit zu fragen - was wäre, wenn es etwas anderes gibt, das anstelle des gelöschten ein.... hätte sein sollen

2. Super, aber dann muss ich meine Methoden wieder löschen ..., aber egal ... ;)

3. ich freue mich schon darauf.

 
Anatoli Kazharski:

1) Er ist überflüssig. Sollte gestrichen werden.

2. Im nächsten Update wird es für jedes Element möglich sein, seine eigene Schriftart und -größe einzustellen.

Ich arbeite bereits am nächsten Artikel. Wahrscheinlich wird er nächste Woche veröffentlicht.

Tol, der Text im Texteingabefeld beim Ändern des Zeitrahmens wird wieder durch "Geben Sie hier Ihren Text ein" ersetzt. Wie wird man das wieder los?

Diese Konstruktion funktioniert nicht (ich habe Ihren Standardtext im Klassenkonstruktor durch "" ersetzt):

string field_text=(m_text_edit_new_symbol.GetValue()!="" ? m_text_edit_new_symbol.GetValue() : Symbol());
 
Artyom Trishkin:

Tol, der im Texteingabefeld eingegebene Text wird beim Ändern des Zeitrahmens wieder durch "Geben Sie hier Ihren Text ein" ersetzt. Wie wird man das wieder los?

Diese Konstruktion funktioniert nicht (ich habe Ihren Standardtext im Klassenkonstruktor durch "" ersetzt):

string field_text=(m_text_edit_new_symbol.GetValue()!="" ? m_text_edit_new_symbol.GetValue() : Symbol());
Ja, es ist besser, den Standardtext erst einmal leer zu lassen.
 
Yuriy Zaytsev:

Ein Anstoß zum Wechsel zu MQL5

Ja, es ist besser, zuzuhören. )

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

MT4 kann nicht heruntergeladen werden

Renat Fatkhullin, 2016.11.30 17:32

Meine Herren, haben Sie gedacht, dass wir als größter Vertreiber der MT4-Plattform (mehr Installationen als jeder andere Broker) weiterhin dafür werben würden?

Dachten Sie, dass wir weiterhin MT4-Installationen in die ganze Welt pumpen, kostenlos und zur Freude derjenigen, die damit prahlen "warum sollte ich MT4 verlassen"?

Ich empfehle Ihnen, an die Zukunft zu denken und die Entwicklung schneller auf Metatrader 5 umzustellen.

Die Veränderungen im Ökosystem sind jetzt viel schneller.


 
Hallo! Ich habe eine Frage. In C-Sprachen gibt es solche Elemente wie TMemo mit automatischem Texttransfer in eine neue Zeile und das übliche TEdit, in das man mehr als 63 Zeichen eingeben kann. Ist es möglich, mit Hilfe Ihrer Entwicklungen Analoga von TMemo und TEdit zu erstellen? Ich verstehe, dass 63 Zeichen eine Beschränkung von Metatrader selbst ist und nicht umgangen werden kann. Ist es möglich, WINAPI dafür zu verwenden? (Entschuldigung, ich weiß nicht viel über die Erstellung von Objekten mit Standard-Windows-Tools).
 
Roman Podpora:
Hallo! Ich habe eine Frage. In C-Sprachen gibt es solche Elemente wie TMemo mit automatischem Texttransfer in eine neue Zeile und das übliche TEdit, in das man mehr als 63 Zeichen eingeben kann. Ist es möglich, mit Hilfe Ihrer Entwicklungen Analoga von TMemo und TEdit zu erstellen? Ich verstehe, dass 63 Zeichen eine Beschränkung von Metatrader selbst ist und nicht umgangen werden kann. Ist es möglich, WINAPI dafür zu verwenden? (Entschuldigung, ich weiß nicht viel über die Erstellung von Objekten mit Standard-Windows-Tools).
Es ist geplant, ein separates Element wie CTextBox zu erstellen, in dem es keine Beschränkungen gibt und Sie den Mehrzeilenmodus sowie vertikale und horizontale Bildlaufleisten aktivieren können.