Ein Crowdsourced-Projekt auf Canvas durchführen - Seite 2

 
Zorro:
Zum Thema der Verwendung von Kanvas als UI.

Ich würde sagen, es ist eine Schönheit.)

Ich bin sehr zufrieden mit der Geschwindigkeit. In Bezug auf die Rendering-Zeit und die Kontrolle ist alles angemessen.

 
Ich danke Ihnen!

Ausblendungen für GIF und PNG
Dateien:
ZoGIF.mqh  2 kb
ZoPNG.mqh  2 kb
 

Ja.

Da Sie bereits Experte für die Erstellung von Steuerelementen auf einer Leinwand sind, sollten Sie sich mit dieser Methode vertraut machen,

warum beschreiben Sie nicht Ihre Basisklassen und Ihr allgemeines Ereignismodell?

----

Wir können von Ihrer Basis ausgehen und dann weitere Kontrollen hinzufügen
- Taste
- Eingabefeld
- Schieberegler
- Dropdown-Liste (bereits in Ihrem Archiv)
- Zeitauswahl (bereits in Ihrem Archiv)


 
Die Angaben sollten in Anführungszeichen gesetzt werden :)

Im Moment bin ich sehr beschäftigt mit der Hauptarbeit, sobald ich frei bin, werde ich den vollen Plan machen, es wird nicht früher als 25.07.2016 sein.

Ganz allgemein gesprochen:

Basisobjekt CFrame - abstraktes Objekt auf der Leinwand, hat x,y, Breite, Höhe und eine Reihe von virtuellen Methoden für die Ereignisbehandlung (OnMouse..., OnNotify, OnPaint), kann andere CFrame-Objekte enthalten.

CWindow ist ein Abkömmling von CFrame, der eine Leinwand implementiert und ein grafisches Objekt auf einem Diagramm ist, externe Ereignisse (OnChartEvent) empfängt und bearbeitet und sie an Objekte (Kind) verteilt, die sich auf ihm befinden.
Alle GUI-Objekte werden von CFrame erzeugt, das mit den notwendigen Methoden ergänzt wird

Das P&F Chart Projekt verfügt nicht über einen globalen Event Controller, dieser wird für Anwendungen mit 2 oder mehr Fenstern (read kanvas) benötigt.
Sie ist diejenige, die Ereignisse an Fenster verteilen und die Erfassung einer Instanz (Tastatur + Maus) durch GUI-Steuerungen überwachen soll.

 
Das Problem mit dem Eingabefeld ist, dass es keine gute Idee gibt, wie man das Vorhandene nutzen kann.

IMHO kann man im Moment nur ein vollwertiges EDIT machen, wenn man eine eigene GUI-Tastatur zeichnet, aber es wäre schwierig, Sprachen zu unterstützen, und es ist unbequem, mit der Maus zu tippen...
 
Renat Fatkhullin:
Im MetaEditor können Sie übrigens Projekte starten, andere Teilnehmer einladen, ihnen Rechte geben und gemeinsam an dem Projekt arbeiten.

Meinen Sie MQL5 Storage?

Renat, könnten Sie mir genauer sagen, wo ich etwas über diesen Mechanismus lesen kann?

Ich verwende das Staorage MQL5 seit seiner Einführung, aber ich habe dort keine Möglichkeit des Gruppenzugriffs gefunden.

 
Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie im Menü "Zugriffsrechte hinzufügen". Ich habe dies in einem meiner Schwesterprojekte verwendet, es ist sehr praktisch - Sie haben alles zur Hand...
 

GUT.

der CFrame ist klar.

---

Mir ist aufgefallen, dass Sie den Weg eingeschlagen haben, bei dem die Blöcke der Benutzeroberfläche jeweils durch eine eigene Bitmap dargestellt werden.

ein wichtiger Punkt für diejenigen, die dies lesen und die bereits begonnen haben, darüber nachzudenken:
Die Arbeit sollte nur auf einer Bitmap erfolgen, auf der alle Elemente der Benutzeroberfläche gerendert werden. Mit Blick auf die Z-Reihenfolge.
In diesem Fall gibt es mehr Möglichkeiten für das Rendering. (Schatten, Farbverläufe usw.).
Und die Kontrolle ist vereinfacht (wir werden nicht auf die Ebene der MT-Objekte gehen)

 
Zorro:
Das Problem mit dem Eingabefeld ist, dass es keine gute Idee gibt, wie man das Vorhandene nutzen kann.

IMHO kann man im Moment nur ein vollwertiges EDIT machen, wenn man eine eigene GUI-Tastatur zeichnet, aber es wäre schwierig, Sprachen zu unterstützen, und es ist unbequem, mit der Maus zu tippen...
hmm, was ist das Problem mit editieren?
 
Yuriy Zaytsev:

Meinen Sie MQL5 Storage?

Renat, können Sie mir genauer sagen, wo ich etwas über diesen Mechanismus lesen kann?

Ich verwende Staorage MQL5 seit seiner Markteinführung, aber ich habe dort keine Möglichkeit für einen gemeinsamen Zugriff gefunden.

Projekte - MetaEditor
MetaEditor Projects ermöglicht es Programmierern, Anwendungen in MQL4/MQL5 aus der Ferne zu entwickeln. Die Projekte werden speziell zu diesem Zweck durchgeführt. Die Projekte werden über den MQL5-Speicher realisiert. Dementsprechend muss ein Benutzer ein gültiges Konto bei MQL5.community sowie MQL5 Storage haben. Das Arbeiten mit Projekten hat alle Vorteile des MQL5 Storage: Sichere Speicherung des Quellcodes. Im Falle eines Festplattenausfalls kann die lokale Kopie der Codes schnell aus dem Speicher abgerufen werden. Zugriff auf den Speicher von jedem Computer aus. Sie können sich in MetaEditor mit Ihrem MQL5.community-Konto anmelden und von jedem PC aus auf das Projekt zugreifen. Der Zugriff auf jedes Projekt wird nur durch einen Projektautor (den Benutzer, der das Projekt erstellt hat) festgelegt. Niemand kann ohne die Erlaubnis des Autors auf ein Projekt zugreifen. Der Ordner Projekte in MQL4 oder MQL5 ist für gemeinsame Projekte gedacht. Im Navigator ist es...

MetaTrader 5 Hilfe | 2015.12.02 10:22

Und im Allgemeinen müssen Sie die gemeinsame Arbeit mit Projekten testen - ich denke, es wird Fragen geben.

Grund der Beschwerde: