Хочу написать свой индикатор и возникла такая ситуация:
Код: Выделить всё
EXPORT void __stdcall Calculate(int index) {
if (!ObjectExists(objName)) {
auto ok = ObjectCreate(objName, obj_Rectangle, 0, Time(10), Close(10), Time(0), Close(0));
}
else {
lastTime = Time(0);
ObjectSet(objName, OBJPROP_TIME2, lastTime);
}
Но в вашем API есть недокументированная функция EXPORT void __stdcall OnPaint(int handle),
с помощью которой я хотел бы видеть обновление прямоугольников и, возможно, других вспомогательных объектов при их перемещении, изменении размеров. Для этого я сделал следующее:
Код: Выделить всё
EXPORT void __stdcall OnPaint(int handle) {
if (ObjectExists(objName)) {
ObjectSet(objName, OBJPROP_TIME2, lastTime);
или даже
ObjectGet(objName, OBJPROP_TIME2);
}
}
Правильно ли использовать функции ObjectSet, ObjectGet и другие Object... в функции OnPaint()?
Видел что-то подобное в индикаторе TimeBox_FST для объекта obj_Text, но там объекты постоянно пересоздаются.