//+------------------------------------------------------------------+//| Überprüfen Sie, ob sich der Zustand der linken Maustaste geändert hat.//+------------------------------------------------------------------+bool CMouse::CheckChangeLeftButtonState(conststring mouse_state)
{
bool left_button_state=(bool)int(mouse_state);
//--- Senden einer Nachricht über die Änderung des Zustands der linken Maustasteif(m_left_button_state!=left_button_state)
::EventChartCustom(m_chart.ChartId(),ON_CHANGE_MOUSE_LEFT_BUTTON,0,0.0,"");
//--- Rückgabe des aktuellen Zustands der linken Maustastereturn(left_button_state);
}
//+------------------------------------------------------------------+
Wir übergeben hier sparam und soweit ich weiß, wird jeder Wert ungleich Null als gedrückte Maustaste behandelt. Aber Werte ungleich Null werden von allen Maustasten gegeben, mindestens aber von Shift und Control.
Wir übergeben hier sparam, und soweit ich weiß, wird jeder Wert ungleich Null als gedrückte Maustaste behandelt. Aber Werte ungleich Null werden von allen Maustasten gegeben, zumindest aber von Shift und Control.
Ist das so beabsichtigt?
Nein, das war nur eine vorübergehende Lösung für meine eigenen Aufgaben.
Sie scheint im Moment nicht einmal irgendwo in der Bibliothek verwendet zu werden. Kann bei Bedarf verfeinert werden.
Nein, das war nur eine vorübergehende Lösung für meine individuellen Aufgaben.
Sie scheint im Moment nicht einmal irgendwo in der Bibliothek verwendet zu werden. Kann bei Bedarf verfeinert werden.
Es wird sehr oft verwendet :) Zum Beispiel beim Ziehen von Fenstern, SpinEdit Quick Swipe. Überall dort, wo der Zustand der LKM geprüft wird.
Ich habe es so gemacht
//+------------------------------------------------------------------+//| Überprüfen Sie, ob sich der Zustand der linken Maustaste geändert hat.//+------------------------------------------------------------------+bool CMouse::CheckChangeLeftButtonState(conststring mouse_state)
{
bool left_button_state=((int)mouse_state==1);//--- Senden einer Nachricht über die Änderung des Zustands der linken Maustasteif(m_left_button_state!=left_button_state)
::EventChartCustom(m_chart.ChartId(),ON_CHANGE_MOUSE_LEFT_BUTTON,0,0.0,"");
//--- Rückgabe des aktuellen Zustands der linken Maustastereturn(left_button_state);
}
//+------------------------------------------------------------------+
Das Problem scheint zu sein, dass ich mir Beispiele in alten Versionen anschaue!
class CProgram : public CWndEvents
{
protected:
//--- Zeitzähler
CTimeCounter m_counter1; // um den Ausführungsprozess zu aktualisieren
CTimeCounter m_counter2; // um Elemente in der Statusleiste zu aktualisieren//--- Hauptfenster
CWindow m_window;
//--- Bild
CPicture m_picture1;
//--- Hauptmenü und seine Kontextmenüs
CMenuBar m_menubar;
CContextMenu m_mb_contextmenu1;
//--- Zeichentisch//CCanvasTable m_canvas_table;//--- Statuszeichenfolge
CStatusBar m_status_bar;
О том, для чего предназначена эта библиотека, более подробно можно прочитать в самой первой статье: Графические интерфейсы I: Подготовка структуры библиотеки (Глава 1). В конце статей каждой части представлен список глав со ссылками. Там же есть возможность загрузить к себе на компьютер полную версию библиотеки на текущей стадии разработки...
Ich habe einen einfachen, aber nützlichen Indikator für MICEX.
Aktie, % Wachstum für den Tag, dann die Standard-Daten, Volumina zu kaufen vom Beginn des Tages BuyVol, Volumina zu verkaufen SellVol, VolDelta Unterschied in den Volumina vom Beginn des Tages, werde ich die % der aktuellen Differenz in Volumina zu beenden.
grüne Delta - es ist wünschenswert, den Kauf zu halten, oder versuchen, für einen Kauf Einstiegspunkt zu suchen, etc.
Nachdem die Bibliothek stark umgestaltet wurde, erinnere ich mich nicht mehr an die Build-Nummer. Wahrscheinlich gibt es keine CCanvasTable in neuen Builds :)
In den Schlussfolgerungen in den Artikeln gibt es ein allgemeines Schema der Bibliothek zum Zeitpunkt der Veröffentlichung, können Sie vergleichen.
string m_header_text; // Text in der Spaltenüberschriftcolor m_header_color; // Textfarbe der Spaltenüberschrift //André
CTCell m_rows[]; // Array der Tabellenzeilen
----------------------------------------------------------------------------------------------------------------------
void HeadersColorPressed(constcolor clr) { m_headers_color_pressed=clr; }
//void HeadersTextColor(const color clr){ m_headers_text_color=clr; } //André
----------------------------------------------------------------------------------------------------------
void SetHeaderText(constuint column_index,conststring value);
//--- Einstellung der Textfarbe auf die angegebene Kopfzeile //Andrévoid HeadersTextColor(constcolor &array[]);
--------------------------------------------------------------------------------------------------------------------
//André //+------------------------------------------------------------------+//| Füllt das Array der Textausrichtungsmodi |//+------------------------------------------------------------------+void CTable::HeadersTextColor(constcolor &array[])
{
int total=0;
//--- Verlassen, wenn ein Array der Größe Null übergeben wurdeif((total=CheckArraySize(array))==WRONG_VALUE)
return;
//--- Den Wert in das Array speichernfor(int c=0; c<total; c++)
m_columns[c].m_header_color=array[c];
}
------------------------------------------------------------------------------------------------------------------------
//André//--- Textfarbeuint clr=::ColorToARGB(m_columns[c].m_header_color);
In der Datei Window.mqh
//--- Behandlung des Anklickens von Formularschaltflächenif(id==CHARTEVENT_CUSTOM+ON_CLICK_BUTTON)
{
//Andréif(StringFind(sparam, CElementBase::ProgramName(), 0)<0)
return;
//--- Das Fenster schließen
-------------------------------------------------------------------------------
int subwin=(CElementBase::ProgramType()==PROGRAM_INDICATOR)? ::ChartWindowFind() : m_subwin;
//--- Senden Sie eine Nachricht darüber//André//Drucken(__FUNCTION__, " " ", subwin, " ", PROGRAM_NAME);//::EventChartCustom(m_chart_id,ON_WINDOW_COLLAPSE,CElementBase::Id(),subwin,"");
::EventChartCustom(m_chart_id,ON_WINDOW_COLLAPSE,CElementBase::Id(),subwin, PROGRAM_NAME);
//--- Senden einer Nachricht über die Änderung der grafischen Oberfläche
::EventChartCustom(m_chart_id,ON_CHANGE_GUI,CElementBase::Id(),0.0,"");
}
---------------------------------------------------------------------------------------
int subwin=(CElementBase::ProgramType()==PROGRAM_INDICATOR)? ::ChartWindowFind() : m_subwin;
//--- Senden Sie eine Nachricht darüber//André//::EventChartCustom(m_chart_id,ON_WINDOW_EXPAND,CElementBase::Id(),subwin,"");
::EventChartCustom(m_chart_id,ON_WINDOW_EXPAND,CElementBase::Id(),subwin,PROGRAM_NAME);
//--- Senden einer Nachricht über die Änderung der grafischen Oberfläche
::EventChartCustom(m_chart_id,ON_CHANGE_GUI,CElementBase::Id(),0.0,"");
In der Datei WndEvents.mqh.
return(false);
//--- Wenn der Fensterkennzeichner und die Unterfensternummer übereinstimmen//Andréif(m_sparam!=m_windows[0].ProgramName())
return(false);
if(m_lparam==m_windows[0].Id() && (int)m_dparam==m_subwin)
Ich habe die Zeilen mit meinem Namen auskommentiert, um die Lokalisierung zu erleichtern
Im Anhang finden Sie die Dateien mit dem geänderten vollständigen Code.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Erlauben Sie die Verwendung von Cookies, um sich auf der Website MQL5.com anzumelden.
Bitte aktivieren Sie die notwendige Einstellung in Ihrem Browser, da Sie sich sonst nicht einloggen können.
Sie sind angemeldet. Die Zwei-Faktor-Authentifizierung wurde deaktiviert. Richten Sie sie erneut ein und scannen Sie einen neuen QR-Code oder fahren Sie mit deaktivierter Zwei-Faktor-Authentifizierung fort.
Guten Abend.
Mouse.mqh.
Wir übergeben hier sparam und soweit ich weiß, wird jeder Wert ungleich Null als gedrückte Maustaste behandelt. Aber Werte ungleich Null werden von allen Maustasten gegeben, mindestens aber von Shift und Control.
Ist das so beabsichtigt?
Guten Abend.
Maus.mqh
Wir übergeben hier sparam, und soweit ich weiß, wird jeder Wert ungleich Null als gedrückte Maustaste behandelt. Aber Werte ungleich Null werden von allen Maustasten gegeben, zumindest aber von Shift und Control.
Ist das so beabsichtigt?
Nein, das war nur eine vorübergehende Lösung für meine eigenen Aufgaben.
Sie scheint im Moment nicht einmal irgendwo in der Bibliothek verwendet zu werden. Kann bei Bedarf verfeinert werden.
Nein, das war nur eine vorübergehende Lösung für meine individuellen Aufgaben.
Sie scheint im Moment nicht einmal irgendwo in der Bibliothek verwendet zu werden. Kann bei Bedarf verfeinert werden.
Ich habe es so gemacht
Nein, das war nur eine vorübergehende Lösung für meine individuellen Aufgaben.
Es scheint im Moment nicht einmal irgendwo in der Bibliothek verwendet zu werden. Kann bei Bedarf verfeinert werden.
In der neuesten Version - https://www.mql5.com/de/code/19703
kann nicht hinzugefügt werden
//CCanvasTable m_canvas_table;Das Problem scheint zu sein, dass ich mir Beispiele in alten Versionen anschaue!
In der neuesten Version - https://www.mql5.com/de/code/19703
kann nicht hinzugefügt werden
Das Problem scheint zu sein, dass ich mir Beispiele in älteren Versionen ansehe!
Ich habe Build 10 Version, https://www.mql5.com/de/articles/3042 funktioniert dort!
Ich musste etwa so vorgehen, was nicht gut ist.
MQL5\Include\EasyAndFastGUI_B10
MQL5/Einschließlich/EinfacheUndSchnelleGUI_B16
Wunderbare Bibliothek!
Ich habe einen einfachen, aber nützlichen Indikator für MICEX.
Aktie, % Wachstum für den Tag, dann die Standard-Daten, Volumina zu kaufen vom Beginn des Tages BuyVol, Volumina zu verkaufen SellVol, VolDelta Unterschied in den Volumina vom Beginn des Tages, werde ich die % der aktuellen Differenz in Volumina zu beenden.
grüne Delta - es ist wünschenswert, den Kauf zu halten, oder versuchen, für einen Kauf Einstiegspunkt zu suchen, etc.
Habe Build 10 Version , https://www.mql5.com/de/articles/3042 funktioniert dort!
Ich hatte so etwas zu tun, was nicht gut ist.
MQL5\Include\EasyAndFastGUI_B10
MQL5\Include\EasyAndFastGUI_B16.
Danke für die Nachricht. Ich habe im Moment keine Zeit. Ich werde ein wenig später sehen, was das Problem sein könnte.
Habe Build 10 Version , https://www.mql5.com/de/articles/3042 funktioniert dort!
Ich hatte so etwas zu tun, was nicht gut ist.
MQL5\Include\EasyAndFastGUI_B10
MQL5/Include/EasyAndFastGUI_B16
Nachdem die Bibliothek stark umgestaltet wurde, erinnere ich mich nicht mehr an die Build-Nummer. Wahrscheinlich gibt es keine CCanvasTable in neuen Builds :)
In den Schlussfolgerungen in den Artikeln gibt es ein allgemeines Schema der Bibliothek zum Zeitpunkt der Veröffentlichung, können Sie vergleichen.
ist es nicht möglich, eine Spalte mit Hilfe der Tabellenfunktion einzufärben?
Wenn Sie zwei Indikatoren hinzufügen.
Ich komme aus Brasilien und habe einen Übersetzer benutzt, um zu schreiben. Ich entschuldige mich für jeden Fehler in dieser Sprache.
In der Datei Table.mqh
In der Datei Window.mqh
In der Datei WndEvents.mqh.
Ich habe die Zeilen mit meinem Namen auskommentiert, um die Lokalisierung zu erleichtern
Im Anhang finden Sie die Dateien mit dem geänderten vollständigen Code.
Ich hoffe, Sie haben geholfen