Обсуждение статьи "Как создать графическую панель любой сложности и как это работает" - страница 5
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нужно чтобы все элементы панели были перерисованы - таким образом они займут самое "верхнее" положение.
Ясно, спасибо! А есть ли у класса CAppDialog встроенный метод перерисовки всех элементов? Если нет, будет ли правильной такая реализация у класса-наследника:
На практике это работает, я проверил.
Ясно, спасибо! А есть ли у класса CAppDialog встроенный метод перерисовки всех элементов? Если нет, будет ли правильной такая реализация у класса-наследника:
На практике это работает, я проверил.
Возможно есть и другие варианты - но это должно работать, так как скрытая панель должна отрисоваться заново - а значит все её элементы станут сверху.
Ясно, спасибо! А есть ли у класса CAppDialog встроенный метод перерисовки всех элементов? Если нет, будет ли правильной такая реализация у класса-наследника:
На практике это работает, я проверил.
Насколько помню, метод Run() перерисовывает график.
Да, он перерисовывает график. Спасибо, попробую!
UPD: Попробовал. Увы, не помогло. Видимо, этот метод перерисовывет сам график, но не панель.
Пытаюсь создать вертикальную полосу прокрутки без привязки к панели, просто на графике, но она почему-то не работает.
Например, с чекбоксом такой код дает реакцию на клик мыши. Галочка появляется и исчезает.
А с вертикальным скролом - никакой реакции на нажатия кнопок мыши.
Подскажите, пожалуйста, кто знает, как заставить работать этот комбинированный элемент на графике?
Подскажите, как вызвать диалоговое окно?
Например, я создал панель, где есть кнопка "Закрыть все позиции". При нажатии на эту кнопку, должно возникать окошко "Вы уверены?" Да/Нет. Как это реализовать?
На данный момент унаследовался от CAppDialog, создал небольшую форму с кнопками Ok/Cancel. При нажатии на кнопку "Ок" добавил строку
gDialogForm.Destroy(); ChartRedraw();
Но диалоговая форма всё равно остается на экране.
Как исправить?
Подскажите, как вызвать диалоговое окно?
Например, я создал панель, где есть кнопка "Закрыть все позиции". При нажатии на эту кнопку, должно возникать окошко "Вы уверены?" Да/Нет. Как это реализовать?
На данный момент унаследовался от CAppDialog, создал небольшую форму с кнопками Ok/Cancel. При нажатии на кнопку "Ок" добавил строку
Но диалоговая форма всё равно остается на экране.
Как исправить?
Подскажите, как вызвать диалоговое окно?
Например, я создал панель, где есть кнопка "Закрыть все позиции". При нажатии на эту кнопку, должно возникать окошко "Вы уверены?" Да/Нет. Как это реализовать?
На данный момент унаследовался от CAppDialog, создал небольшую форму с кнопками Ok/Cancel. При нажатии на кнопку "Ок" добавил строку
Но диалоговая форма всё равно остается на экране.
Как исправить?
Подскажите, как вызвать диалоговое окно?
Например, я создал панель, где есть кнопка "Закрыть все позиции". При нажатии на эту кнопку, должно возникать окошко "Вы уверены?" Да/Нет. Как это реализовать?
На данный момент унаследовался от CAppDialog, создал небольшую форму с кнопками Ok/Cancel. При нажатии на кнопку "Ок" добавил строку
Но диалоговая форма всё равно остается на экране.
Как исправить?
Возьмите пример панели Close On Chart Panel и в обработчики клика вставьте вызов 'MessageBox'.
В файле 'Close On Chart Panel Dialog.mqh' внесите такие изменения:
Результат:
Здравствуйте!
Подскажите пожалуйста, почему ваша панель прекрасно работает на реальном графике, но не работает в тестере стратегий?
То есть события нажатий кнопок, к примеру, не обрабатываются.
Как исправить?
Заранее спасибо!