Meldungen oben links neu positioniert (Indikator v1.39)
User: die Anzeigetexte oben links ueberlagern sich. Zwei Fehler im alten
'16 + i*(size+6)':
(1) START zu hoch -- MT5 zeichnet oben links SELBST die Symbol-/Zeitrahmen-
Zeile; y=16 landete mitten darin. Beleg: es ueberlagerte sich, obwohl nur
EINE MS-Zeile aktiv war -- es konnten also gar nicht zwei Meldungen sein.
(2) ABSTAND zu knapp -- OBJPROP_FONTSIZE ist PUNKT, nicht Pixel; 10 pt rendern
je nach DPI 16-20 px. Bei 16 px Zeilenabstand ueberlappen mehrere
Meldungen zwangslaeufig.
Jetzt Startabstand ueber InpMeldungY (40) und Zeilenabstand Faktor 2,0.
Kompiliert ins richtige Terminal: 0 errors, 0 warnings.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
adcae09317
commit
046d9c6948
+20
-2
@@ -12,7 +12,13 @@
|
||||
//| 4) Der Bot muss laufen (schreibt die CSV alle ~5 s). |
|
||||
//+------------------------------------------------------------------+
|
||||
#property copyright "Oil Trading Bot"
|
||||
#property version "1.38"
|
||||
#property version "1.39"
|
||||
// v1.39 (2026-08-19): MELDUNGEN oben links neu positioniert (User: "die
|
||||
// Anzeigetexte ueberlagern sich"). Zwei Fehler: der Start lag bei y=16
|
||||
// und damit in MT5s EIGENER Symbol-/OHLC-Zeile, und der Zeilenabstand
|
||||
// rechnete FONTSIZE wie Pixel -- es ist aber PUNKT (10 pt = 16-20 px je
|
||||
// nach DPI). Jetzt Startabstand ueber InpMeldungY (40) und Abstand
|
||||
// Faktor 2,0 der Schriftgroesse.
|
||||
// v1.38 (2026-08-17): Beschriftung der KONSOLIDIERUNGS-BOX entfernt (User-Wunsch).
|
||||
// Sie kam in v1.30 auf die Frage "was bedeutet die graue Box" und stand
|
||||
// seither dauerhaft im Chart. Der erklaerende Text bleibt als TOOLTIP an
|
||||
@@ -239,6 +245,7 @@ input bool InpShowTradeLevels = true; // MT5-Positionslinien+Labels (st
|
||||
// (`[trading] export_meldungen=false`) ODER hier.
|
||||
input bool InpShowMeldungen = true; // Meldungen oben links einblenden
|
||||
input int InpMeldungSize = 10; // Schriftgroesse der Meldungen
|
||||
input int InpMeldungY = 40; // Startabstand von oben (unter MT5s eigener Symbol-Zeile)
|
||||
input color InpMeldungColor = clrGainsboro; // Farbe der Meldungen
|
||||
// Zonen statt nackter Linien (User-Wunsch 2026-08-17). Die BREITE ist die echte
|
||||
// Spanne der Pivots im Cluster — NICHT Fibonacci (im Projekt gemessen und
|
||||
@@ -968,8 +975,19 @@ void Redraw()
|
||||
ObjectSetInteger(0, mn, OBJPROP_SELECTABLE, false);
|
||||
ObjectSetInteger(0, mn, OBJPROP_BACK, false);
|
||||
}
|
||||
// ⚠⚠ POSITION KORRIGIERT (User 2026-08-19: „die Anzeigetexte oben links
|
||||
// ueberlagern sich"). ZWEI Fehler steckten im alten `16 + i*(size+6)`:
|
||||
// (1) START zu hoch: MT5 zeichnet oben links SELBST die Symbol-/
|
||||
// Zeitrahmen-Beschriftung ("SpotCrude,M5") und ggf. die
|
||||
// OHLC-Zeile. y=16 landete mitten darin. Der Beleg war, dass sich
|
||||
// etwas ueberlagerte, obwohl nur EINE MS-Zeile aktiv war — es
|
||||
// konnten also gar nicht zwei Meldungen sein.
|
||||
// (2) ABSTAND zu knapp: `OBJPROP_FONTSIZE` ist in PUNKT, nicht Pixel.
|
||||
// 10 pt rendern je nach DPI-Skalierung 16-20 px hoch — bei 16 px
|
||||
// Zeilenabstand ueberlappen mehrere Meldungen zwangslaeufig.
|
||||
// Jetzt Faktor 2,0 (10 pt -> 20 px), das traegt auch 125 % DPI.
|
||||
ObjectSetInteger(0, mn, OBJPROP_YDISTANCE,
|
||||
16 + msg_idx * (InpMeldungSize + 6));
|
||||
InpMeldungY + msg_idx * (int)(InpMeldungSize * 2.0));
|
||||
ObjectSetString (0, mn, OBJPROP_TEXT, p[1]);
|
||||
ObjectSetInteger(0, mn, OBJPROP_COLOR, InpMeldungColor);
|
||||
msg_idx++;
|
||||
|
||||
Reference in New Issue
Block a user