Создаю свой собственный класс - наследник от CBmpButton. При попытке использовать этот класс в скрипте - я не получаю кнопки, точнее я получаю пустой квадратный контур.
Сам класс:
А вот скрипт, который использует этот класс:
А my_button.BmpNames() вызвать для установки изображений, не надо? :)
На конкурс?
А я по тупости подумал, что нужно свой класс написать. И написал на подножном, громоздко но работает.
Теперь вот думаю, отправлять или не позориться...
А my_button.BmpNames() вызвать для установки изображений, не надо? :)
На конкурс?
А я по тупости подумал, что нужно свой класс написать. И написал на подножном, громоздко но работает.
Теперь вот думаю, отправлять или не позориться...
Нет. Не на конкурс. Вопрос - почему после наследования не получается кнопка.
Наверно по тому, что в родительском классе Create создает объект, а вот чтоб у кнопки был "фон" (это ведь БМПкнопка), нужно вызвать еще и BmpNames() с указанием картинок состояний.
Это нужно делать или в классе потомке или в самой программе.
Наверно по тому, что в родительском классе Create создает объект, а вот чтоб у кнопки был "фон" (это ведь БМПкнопка), нужно вызвать еще и BmpNames() с указанием картинок состояний.
Это нужно делать или в классе потомке или в самой программе.
Я не хочу фон. Хочу обычную кнопку. Ведь когда напрямую создать кнопку как
CBmpButton MyBmpButtonне нужно применять рисунок в виде фона - достаточно вызвать метод Create...
Я не хочу фон. Хочу обычную кнопку. Ведь когда напрямую создать кнопку как
не нужно применять рисунок в виде фона - достаточно вызвать метод Create...Или я не понимаю или что-то не так.
Если нужна кнопка, простая кнопка, то нужно наследовать от класса CButton. Тогда создается объект кнопка.
Если нужна графическая кнопка, то наследуем от CBmpButton. Тогда создается объект Bitmap Label. У него нет серого прямоугольника по умолчанию. Он не виден.
Чтоб его увидеть, нужно на чарте пкм - список объектов - все объекты.
все правильно, так и должно быть.
Мой класс "СontrolsE.mqh ". Это по идеи графическая кнопка наследованная от класса CBmpButton. Раз она наследована от CBmpButton, значит я должен получить вот такую кнопочку
, но только с двумя моими методами. Но я получаю
.
Мой класс "СontrolsE.mqh ". Это по идеи графическая кнопка наследованная от класса CBmpButton. Раз она наследована от CBmpButton, значит я должен получить вот такую кнопочку
, но только с двумя моими методами. Но я получаю .
Неа, такая кнопочка получится, если наследовать от класс CButton.
А если наследовать от CBmpButton, то получится ровно то, что есть - этот объект графическая метка, а нужна кнопка.
Пример из директории "...\MQL5\Experts\Examples\Controls\ControlsDialog.mqh".
Объявление кнопок -
//+------------------------------------------------------------------+ //| Class CControlsDialog | //| Usage: main dialog of the Controls application | //+------------------------------------------------------------------+ class CControlsDialog : public CAppDialog { private: CEdit m_edit; // the display field object CButton m_button1; // the button object CButton m_button2; // the button object
Действительно, класс CButton. Вот это я дал. Всё получилось и наследование и добавление методов :).
Действительно, класс CButton. Вот это я дал. Всё получилось и наследование и добавление методов :).
Уря. Я рад :)
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Создаю свой собственный класс - наследник от CBmpButton. При попытке использовать этот класс в скрипте - я не получаю кнопки, точнее я получаю пустой квадратный контур.
Сам класс:
А вот скрипт, который использует этот класс: