Добавить BMP файл в советник

 

Всем привет! Возник такой вопрос... можно ли загружать bmp изображения не с каталога терминала, а с самого эксперта? К примеру я работаю с классом Canvas и через FileFromLoad загружаю картинку с \MQL4\files.. но когда советник включаю на другом компе выходит естественно что файл не найден... На скрине вроде bmp файл! Примеров работы с canvas очень мало... Можно ли создать такую панель через canvas с переходом темного цвета к светлому? Спасибо! 

 

 
Aibek Mugiynov:

Всем привет! Возник такой вопрос... можно ли загружать bmp изображения не с каталога терминала, а с самого эксперта? К примеру я работаю с классом Canvas и через FileFromLoad загружаю картинку с \MQL4\files.. но когда советник включаю на другом компе выходит естественно что файл не найден... На скрине вроде bmp файл! Примеров работы с canvas очень мало... Можно ли создать такую панель через canvas с переходом темного цвета к светлому? Спасибо! 

Вам нужно помещать картинку в ресурс (Ресурсы). 
 
Karputov Vladimir:
Вам нужно помещать картинку в ресурс (Ресурсы). 
Я это понял! Но как в маркете продукт будет обращаться к ресурсу? Клиенту отдельно надо закачивать ресурс?
 

Нет. Вы включаете картинку как ресурс. Обращаетесь внутри программы тоже как к ресурсу. Компилируете. Картинка уезжает внутри вашего файла. 

Для проверки после компиляции переименуйте (или переместите) свою картинку в папке и запустите на выполнение свою программу. 

 
Karputov Vladimir:

Нет. Вы включаете картинку как ресурс. Обращаетесь внутри программы тоже как к ресурсу. Компилируете. Картинка уезжает внутри вашего файла. 

Для проверки после компиляции переименуйте (или переместите) свою картинку в папке и запустите на выполнение свою программу. 

Спасибо большое! Попробую сделать))
 
Aibek Mugiynov:
Спасибо большое! Попробуй сделать))
? Вам нужен пример?
 
Karputov Vladimir:
? Вам нужен пример?
нет спасибо)) имел ввиду попробую))
 
Karputov Vladimir:

Нет. Вы включаете картинку как ресурс. Обращаетесь внутри программы тоже как к ресурсу. Компилируете. Картинка уезжает внутри вашего файла. 

Для проверки после компиляции переименуйте (или переместите) свою картинку в папке и запустите на выполнение свою программу. 

Владимир. Помнишь, я тебе панельку давал с картинками в ресурсах. Они у тебя не отображались почему-то. И как быть уверенным?
 
Karputov Vladimir:
? Вам нужен пример?
Хотя... Если вам не трудно можете скинуть простой пример? Спасибо!
 
Artyom Trishkin:
Владимир. Помнишь, я тебе панельку давал с картинками в ресурсах. Они у тебя не отображались почему-то. И как быть уверенным?

Проверять лучше на очень простых примерах.

 

Aibek Mugiynov:
Хотя... Если вам не трудно можете скинуть простой пример? Спасибо!

Айн момент... 

 
Karputov Vladimir:

Проверять лучше на очень простых примерах.

 

Айн момент... 

Я попробовал, без ресурса находит, а когда обращаюсь к ресурсу не находит((    кстати на языке mql4 я написал)

//+------------------------------------------------------------------+
//|                                                      Пример.mq4  |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "http://www.mql4.com"
#property version   "1.00"
#include <Canvas\Canvas.mqh>
#resource "\\Files\\777.bmp"

string name1 = "MainPanel";   
CCanvas panel1;               
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(ChartGetInteger(0,CHART_FOREGROUND,0)) ChartSetInteger(0,CHART_FOREGROUND,0,false); 
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   panel1.Destroy(); 
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//--- 
   if (ObjectFind(name1)==-1) 
   {
    panel1.CreateBitmapLabel(name1,20,20,1,1,COLOR_FORMAT_XRGB_NOALPHA);
    panel1.LoadFromFile("::Files\\777.bmp");
    panel1.TransparentLevelSet(200);
    panel1.Update();
   }

  }
Причина обращения: