Einzelnen Beitrag anzeigen
  #2 (permalink)  
Alt 28.06.22
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
AVT befindet sich auf einem aufstrebenden Ast
Angry ObjectsTotal Bug

Also mal wieder die Quelle geprüft. Entweder das ist ein Bug in ObjectsTotal oder in meinem Code.
Die Funktion ObjectsTotal(ChartID(),0,OBJ_HLINE) liefert falsche Ergebnisse.
Im Chart werden 2 von 4 Buttons und 6 von 8 Vertikalen Linien gelistet:

Code:
Print(__FUNCTION__,
      " No of Hlines=",(int)ObjectsTotal(0,0,OBJ_HLINE) );
//Ergebnis: GetSlTpHits No of Hlines=14 (das ist korrekt laut Objekt Liste)

for(int i=ObjectsTotal(ChartID(),0,OBJ_HLINE)-1; i>=0; i--)
{
    string obj_name=ObjectName(i);
    Print(__FUNCTION__," ",(int)i,". "," obj_name=",obj_name);
}
/*Ergebnis: 
!! GetSlTpHits 13.  obj_name=BND-Dfibo_SaveBut  falsch: ist Button
!! GetSlTpHits 12.  obj_name=BND-BBsqzC_SaveBut falsch: ist Button
ok GetSlTpHits 11.  obj_name=2nd3rd
!! GetSlTpHits 10.  obj_name=2023start falsch: ist Vertical Line
!! GetSlTpHits 9.  obj_name=2022start  falsch: ist Vertical Line
ok GetSlTpHits 8.  obj_name=2022high
!! GetSlTpHits 7.  obj_name=2021start  falsch: ist Vertical Line
ok GetSlTpHits 6.  obj_name=2021low
ok GetSlTpHits 5.  obj_name=2021high
ok GetSlTpHits 3.  obj_name=2020low
ok GetSlTpHits 2.  obj_name=2020high
!! GetSlTpHits 1.  obj_name=2019start  falsch: ist Vertical Line
ok GetSlTpHits 0.  obj_name=1st3rd
unterschlagen werden all horizontalen Linien, die Standard Namen haben "Horizontal Line xxx"
*/
Ich kann an meinem Code nix Falsches sehen. AVT