input enum string pra facilitar seleção do arquivo sem ter que escrever e possível?

 

fiz assim mais não deu certo, seria tipo uma listas de nome de imagens que ao escolher chama a imagem correspondente

chato ficar escrevendo o nome no input pra chamar. 

//+------------------------------------------------------------------+
//|                                                    WallPaper.mq5 |
//|                                                      Daniel Jose |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "Daniel Jose"
#property version   "1.00"
//+------------------------------------------------------------------+
#include <Auxiliar\C_WallPaper.mqh>
//+------------------------------------------------------------------+
enum eType {IMAGEM, LOGO, COR};
//+------------------------------------------------------------------+
enum eMeasure1
  {
   points1  = int("WallPaper_01"),       //WallPaper_01
   points2= int("WallPaper_02"),         //WallPaper_02
   points3= int("WallPaper_03"),          //WallPaper_03
  };
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
input char     user01 = 30;               //Transparencia ( 0 a 100 )
input eMeasure1                user02 = points1;//[■Nome do arquivo ■]
input eType    user03 = IMAGEM;           //Tipo de fundo do grafico


//+------------------------------------------------------------------+
C_WallPaper WallPaper;
//+------------------------------------------------------------------+
int OnInit()
  {
   if(user03 != COR)
      WallPaper.Init(user03 == IMAGEM ? "WallPapers\\" + user02 : "WallPapers\\Logos\\" + _Symbol, (char)(100 - user01));

   return INIT_SUCCEEDED;
  }
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   WallPaper.Destroy();
  }
//+------------------------------------------------------------------+
void OnTick()
  {
  }
//+------------------------------------------------------------------+
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
  {
   if(id == CHARTEVENT_CHART_CHANGE)
      WallPaper.Resize();
  }
//+------------------------------------------------------------------+
 
aqui o código sem essa doideira minha kkkkkkk.

//+------------------------------------------------------------------+
//|                                                    WallPaper.mq5 |
//|                                                      Daniel Jose |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "Daniel Jose"
#property version   "1.00"
//+------------------------------------------------------------------+
#include <Auxiliar\C_WallPaper.mqh>
//+------------------------------------------------------------------+
enum eType {IMAGEM, LOGO, COR};
//+------------------------------------------------------------------+
input char     user01 = 30;               //Transparencia ( 0 a 100 )
input string   user02 = "WallPaper_01";   //Nome do arquivo
input eType    user03 = IMAGEM;           //Tipo de fundo do grafico
//+------------------------------------------------------------------+
C_WallPaper WallPaper;
//+------------------------------------------------------------------+
int OnInit()
{
        if(user03 != COR) WallPaper.Init(user03 == IMAGEM ? "WallPapers\\" + user02 : "WallPapers\\Logos\\" + _Symbol, (char)(100 - user01));
        
        return INIT_SUCCEEDED;
}
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
        WallPaper.Destroy();
}
//+------------------------------------------------------------------+
void OnTick()
{
}
//+------------------------------------------------------------------+
void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam)
{
        if(id == CHARTEVENT_CHART_CHANGE)
                WallPaper.Resize();
}
//+------------------------------------------------------------------+
 
Não achei "doideira", é até bem lógico, mas não é mais fácil um CASE para as opções do enum, e na descrição vc colocar //Floresta, //Modelo de Lingeri, //Gato fofinho e etc?
 
felipe ramos:

fiz assim mais não deu certo, seria tipo uma listas de nome de imagens que ao escolher chama a imagem correspondente

chato ficar escrevendo o nome no input pra chamar. 

Boa noite Felipe e Cesar!


Felipe, acho que você pode usar tanto o CASE que o Cesar sugeriu acima quanto o exemplo abaixo, o resultado deve ser o mesmo . . .

enum eMeasure1
  {
   points0 = 0,   //WallPaper_01
   points1 = 1,   //WallPaper_02
   points2 = 2    //WallPaper_03
  };
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
input char        user01 = 30;        //Transparencia ( 0 a 100 )
input eMeasure1   user02 = points1;   //[Nome do arquivo]
input eType       user03 = IMAGEM;    //Tipo de fundo do grafico

//---
string file_name[3] = {"WallPapers\\WallPaper_00", "WallPapers\\WallPaper_01", "WallPapers\\WallPaper_02"};

//+------------------------------------------------------------------+
int OnInit()
  {
   if(user03 != COR)
      WallPaper.Init(user03 == IMAGEM ? file_name[user02] : "WallPapers\\Logos\\" + _Symbol, (char)(100 - user01));

   return INIT_SUCCEEDED;
  }
 
obrigado por responder, sou novato ainda kkkkkk tenho muito que aprender. Estou desenvolvendo um EA meu e já esta chegando na finalização, só falta fazer os testes das minhas  estratégias e desempenho do EA. Admito que estou um pouco perdido nisso kkkk. Não sei a forma certa de fazer. Mais grato por responder.
 
felipe ramos #:
obrigado por responder, sou novato ainda kkkkkk tenho muito que aprender. Estou desenvolvendo um EA meu e já esta chegando na finalização, só falta fazer os testes das minhas  estratégias e desempenho do EA. Admito que estou um pouco perdido nisso kkkk. Não sei a forma certa de fazer. Mais grato por responder.

De nada...


Existem alguns tópicos em português também relacionados a esse tema. Veja se lhe ajudam:

Tudo sobre Backtesting, Otimização, Setups, Validação e Testes de Estratégias - Geral - Fórum de negociação algorítmica MQL5

Tudo sobre Séries Contínuas (WIN$, IND$, WDO$, DOL$, etc.) - Geral - Fórum de negociação algorítmica MQL5

Histórico completo de ticks para MiniÍndice - Geral - Fórum de negociação algorítmica MQL5

Testador de estratégia: diferença anormal entre "Cada tick" e "Cada tick é baseado em um tick real" - Expert Advisors e Negociação Automatizada - Fórum de negociação algorítmica MQL5

Saiba como acessar as Séries Contínuas do Dólar e Índice da B3 - Corretoras - 4 agosto 2020 - Blogs de Traders (mql5.com)

Tudo sobre Backtesting, Otimização, Setups, Validação e Testes de Estratégias
Tudo sobre Backtesting, Otimização, Setups, Validação e Testes de Estratégias
  • 2019.04.26
  • www.mql5.com
Decidi criar esse tópico para concentrar tudo (perguntas, respostas, cases, informações, etc...
 
Irei verificar, novamente agradeço. Sucesso nos seus objetivos GUERREIRO.
 
Cesar Afif rezende Oaquim #:
Não achei "doideira", é até bem lógico, mas não é mais fácil um CASE para as opções do enum, e na descrição vc colocar //Floresta, //Modelo de Lingeri, //Gato fofinho e etc?

agradeço pela a ajuda GUERREIRO. Sucesso pra ti.