![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Принудительное преобразование типа здесь, можно ли его поместить внутрь функции, чтобы пользователю не нужно было писать (string) вне функции
Не очень понял вопрос, поэтому мой ответ может быть невпопад.
Можно сделать так:
Функция double делает возврат в переменную типа string с помощью принудительного преобразования на этапе возврата значения.Можно еще проще:
w7_s_p4_EDIT_Comment_2((string)w6_d_p5_S_EDIT_Spin_the_value());
Теоретически, можно и так:
w7_s_p4_EDIT_Comment_2(w6_d_p5_S_EDIT_Spin_the_value());
компилятор сам преобразует double в string, но не хотел бы это рекомендовать.
Я не очень понимаю вопрос, поэтому мой ответ может быть не по теме.
Вы можете сделать это следующим образом:
Функция double возвращает переменную строкового типа путем принудительного преобразования на шаге возврата значения.
Теоретически это можно сделать:
Компилятор сам преобразует double в строку, но я не рекомендую этого делать.
Продолжение темы установки свойств, а также возврата и пересылки значений между элементами.
Мы рассмотрели несколько вариантов:
1. Установили текст в текстовое поле ввода.
w7_s_p4_EDIT_Comment_1("Some random text");
2. Назначили новое значение слайдеру.
w6_i_p3_H_SLIDER_Roll_the_value(33);
3. Выбрали произвольное число полю ввода с кнопками.
w6_d_p5_S_EDIT_Spin_the_value(423.11);
4. Послали несколько текстовых строк в ячейки таблицы Account Info.
5. В итоге, мы вернули новое значение элемента S_EDIT и переслали его в два разных окна: ячейку таблицы Account Info и текстовое поле ввода в окне Settings example 2.
double Spin_edit_value = w6_d_p5_S_EDIT_Spin_the_value();//Делаем возврат значения параметра (тип double).
w7_s_p4_EDIT_Comment_2((string)Spin_edit_value);
//---------------------------------------------------------------------------------------------------
Для завершения этой темы и переходу к следующей, необходимо сделать несколько вещей:
1. Изменить цвет полосы слайдера.
2. Поменять цвет основания и текста S_EDIT.
3. Поменять цвета кнопки в нажатом и отжатом состояниях.
4. Проверка отсылки значений в элементы на событии таймера .
//---------------------------------------------------------------------------------------------------
1. Изменение цвета полосы слайдера:
Полученный результат:
Назначим полосе слайдера другой цвет:
Результат:
//---------------------------------------------------------------------------------------------------
2. Изменение цвета текста и основания элемента S_EDIT:
Получим исходный цвет основания поля ввода с кнопками:
Выведем его в журнал:
Назначим другой цвет основания поля:
Результат:
Установка цвета текста поля S_EDIT. (использован префикс свойства р4 вместо р5, так как забыл добавить свойство цвет текста для S_EDIT. недоработка исправится в след.версии).
//---------------------------------------------------------------------------------------------------
3. Поменять цвета кнопки в нажатом и отжатом состояниях:
Изменим цвет кнопки в нейтральном состоянии:
Установим другой цвет для активированного состояния кнопки:
У кнопки также можно менять цвет текста для нейтрального и нажатого состояния, но на маленьком шрифте это незаметно. Поэтому, выберем другое окно:
Результат:
Результат:
//---------------------------------------------------------------------------------------------------
4. Проверка отсылки значений в элементы на событии таймера:
Результат:
//------------------------------------------------------------------------------------------------
На этом данная тема завершена.
Далее, переходим к темам:
9. Возврат предыдущего значения (_V_LAST). Когда и для каких случаев требуется последнее значение (не путать с текущим).
10. Протестируем устновку состояний ON/OFF/LOCK_ON/LOCK_OFF/LOCK/UNLOCK для различных типов элементов.
Внутри функции w7_s_p4_EDIT_Comment_2 затем преобразуем тип
Внутри функции w7_s_p4_EDIT_Comment_2 ничего нет. Это обертка вызывающая центральную функцию. А функция обертка может возвращать значение только своего типа.
Не может ли функция w7_s_p4_EDIT_Comment_2 генерировать соответствующую перегруженную версию, которая принимает тип double?
Функция w7_s_p4_EDIT_Comment_2 не имеет ничего внутри . Это просто обертка, вызывающая центральную функцию. Функции-обертки могут возвращать значения только своего типа.
Она не может, потому что является оберткой. Нет необходимости усложнять ее. Всю работу делает центральная функция.Верно.