Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 142
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Все-таки мне нужна будет переменная "st" не только в Alert, но и для вычислений, а при компиляции выходит предупреждение "возможна потеря данных из-за преобразованию типов".
Предполагаю, потому, что получается 10 значное число, а в int максимальное значение 2 147 483 647, у меня на данный момент получается 1 380 758 400. Может имеет смысл использовать long и наверное советник будет в этой части будет потреблять много ресурсов?
Не ужели Вы принцип приведения типов так и не поняли? Это же так просто:
Хочу рисовать в эксперте на canvas. Чтобы картинка на холсте перерисовалась в OnInit, OnTimer, OnTick и в onChartEvent. Я объявляю CCanvas canvas в глобальных переменных и вызываю canvas.методы везде где мне надо. Но компилятор ругается на такое глобальное объявление unresolved static variable 'CCanvas::m_default_colors' (и при чём тут colors?)
код примерно такой
#include <Canvas\Canvas.mqh>
CCanvas canvas;
int OnInit()
{
//CCanvas canvas; если объявить тут - то рисует, но как тогда перерисовать в OnTick?
canvas.CreateBitmapLabel("ProbeGraph", 0, 0, width ,heigth, COLOR_FORMAT_ARGB_RAW);
canvas.Circle(Xcentr,Ycentr,Rmin,ColorToARGB(clrBlue, 115)); canvas.Update();
}
void OnTick()
Как договориться с компилятором? Есть пример с canvas в эксперте?{
canvas.Circle(Xcentr,Ycentr,Rmin,ColorToARGB(clrBlue, 115)); canvas.Update();
}
Хочу рисовать в эксперте на canvas. Чтобы картинка на холсте перерисовалась в OnInit, OnTimer, OnTick и в onChartEvent. Я объявляю CCanvas canvas в глобальных переменных и вызываю canvas.методы везде где мне надо. Но компилятор ругается на такое глобальное объявление unresolved
...
Как договориться с компилятором? Есть пример с canvas в эксперте?Ну Вы же не новичёк! Опубликуйте код правильно!
Ну Вы же не новичёк! Опубликуйте код правильно!
Код вот он. Но в нём же копаться гораздо хуже. И он не работает. Ошибка unresolved static variable 'CCanvas::m_default_colors' ProbeGraph.mq5 21 9
И куча варнингов по поводу перекрытия переменных heigth и width. В общем насколько я понял компилятор не хочет вызывать конструктор класса CCanvas в глобальных переменных, а хочет вызвать конструктор в OnInit. И как тогда обращаться к экземпляру класса за пределами OnInit я не понимаю.
Ещё. раньше тело функции Draw было внутри onInit, а самой Draw не было. Всё работало, но внутри OnInit. Это я тут уже извращаться начал, пытаясь передать ссылку на экземпляр класса в функцию Draw, так как через глобальные переменные не получается.
В общем код в процессе написания, проблема с созданием глобального экземпляра класса CCanvas.
Я вот одного понять не могу: если компилятор ругается - почему ошибки не исправляются? А?
Я вот одного понять не могу: если компилятор ругается - почему ошибки не исправляются? А?
Скопировал предложенный код полностью. Ошибка та же самая что и была unresolved static variable 'CCanvas::m_default_colors' prob1.mq5 21 9
У меня нет никаких ошибок. Билд последний.
Скопировал предложенный код полностью. Ошибка та же самая что и была unresolved static variable 'CCanvas::m_default_colors' prob1.mq5 21 9