28.06.22
|
Elite Mitglied
|
|
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 613
|
|
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
|