Ошибки, баги, вопросы - страница 1063
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Попробуй ObjSetInteger(id, Name, OBJPROP_BACK, false);
Пробовал. Форма действительно проваливается назад, но делает это самым безобразным образом, т.е. проваливается даже за бары. А задача несколько другая, нужно просто что бы текст отображался в форме, при этом сама форма была поверх графика и других форм.
Объекты отображаются в порядке создания, если нужно поменять порядок то стоит сохранить данные объектов и пересоздать их в нужном порядке.
Или баг даже в этом?
Пробовал. Форма действительно проваливается назад, но делает это самым безобразным образом, т.е. проваливается даже за бары. А задача несколько другая, нужно просто что бы текст отображался в форме, при этом сама форма была поверх графика и других форм.
Нужно просто учитывать порядок создания графических объектов. Те, что должны быть ниже, нужно создавать в первую очередь.
Да, это первое о чем я подумал. Менял порядок - результат тот же. Но чудес не бывает. Хотя сейчас взял рабочий проект и попытался в нем разместить OBJ_EDIT - он заработал нормально, т.е виден над формой. В общем чертовщина какая-то. Ясно, что я что-то не учел или забыл. Но все-таки хотелось бы разобраться, дабы не наступать на эти грабли в следущий раз. Вот код OnInit() для теста:
Да, это первое о чем я подумал. Менял порядок - результат тот же. Но чудес не бывает. Хотя сейчас взял рабочий проект и попытался в нем разместить OBJ_EDIT - он заработал нормально, т.е виден над формой. В общем чертовщина какая-то. Ясно, что я что-то не учел или забыл. Но все-таки хотелось бы разобраться, дабы не наступать на эти грабли в следущий раз. Вот код OnInit() для теста:
В таком случае нужен обработчик объектов, чтоб учёт что создаётся и в каком порядке был в одном месте, тогда не будет накладок что одна функция создаёт это вторая это, и смена вызова функций меняет порядок.
такой баг сложно отловить, и даже предусмотреть.
Всем здравствуйте!
В справке есть вот такой абзац:
Т.е. если в очереди событий есть ChartEvent – второй раз в очередь оно вставать не должно. Не тут то было :)
Набросал эксперт для проверки... Получилось что не зависимо от того, есть в очереди событие ChartEvent или нет, обработчик события ChartEvent вызывается столько раз, сколько я его генерирую.
Это отлично, но по-моему нужно править справку… Или я не прав?
Всем здравствуйте!
В справке есть вот такой абзац:
Т.е. если в очереди событий есть ChartEvent – второй раз в очередь оно вставать не должно. Не тут то было :)
Набросал эксперт для проверки... Получилось что не зависимо от того, есть в очереди событие ChartEvent или нет, обработчик события ChartEvent вызывается столько раз, сколько я его генерирую.
Это отлично, но по-моему нужно править справку… Или я не прав?
Это касается лишь случая переполнения очереди, если очередь переполнена то событие тип которого уже есть в очереди не ставиться.
если же очередь не переполнена (а длинна очереди навскидку 1024) то все события встают на обработку.
Это касается лишь случая переполнения очереди, если очередь переполнена то событие тип которого уже есть в очереди не ставиться.
если же очередь не переполнена (а длинна очереди навскидку 1024) то все события встают на обработку.
Понял. Спасибо :)
PS: В вышеприведенном эксперте больше 1000 в очередь поставить не получилось.
Инфо для MQ. В справочнике для OnTimer есть "... на получение функцией EventSetTimer()...". Надо бы ещё дописать "... или EventSetMillisecondTimer()...".