[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 557

 
TarasBY:

Que tal isso?


Obrigado, tudo funciona!
 
rigonich:
Basta inserir na frente de sua variável
e esta linha será exibida no diálogo de propriedades que aparece ao anexar especialista, indicador ou script (se suas propriedades contiverem #propriedade show_inputs ) a um gráfico.

Isto é, se entendi bem, você está sugerindo que simplesmente comente para que o usuário selecione os valores que serão listados neste comentário?

A linha abaixo indica a própria variável onde o valor necessário será definido por um usuário. É assim?

 
Chiripaha:

Isto é, se entendi bem, você está sugerindo que o usuário simplesmente comente os valores que serão listados neste comentário?

E a linha abaixo especifica a própria variável, na qual o usuário especificará o valor desejado. Certo?



Sim, eu entendi que era sobre isso que você estava perguntando.
 
rigonich:

Sim, pelo que entendi, era sobre isso que você estava perguntando.

Nem por isso...

Eu queria fazer com que houvesse algum tipo de menu. Assim como na seleção de uma variável bool, seja falsa ou verdadeira.
Para que o usuário só pudesse clicar em valores claramente definidos do parâmetro. Para que ele não entre "erroneamente" em desnecessários, pois, neste caso, o Consultor Especialista não trabalhará corretamente.

O usuário é até eu mesmo. Como é possível esquecer quais parâmetros devem estar presentes para uma determinada variável.
 

Sinto muito, não consigo encontrar... pode me dizer, por favor?

COMO MOVER TODOS OS ELEMENTOS DE UMA MATRIZ UNIDIMENSIONAL POR 1 ÍNDICE?

Existe uma operação ou tem que ser feita em loop?

 
peco:

Sinto muito, não consigo encontrar... pode me dizer, por favor?

COMO MOVER TODOS OS ELEMENTOS DE UMA MATRIZ UNIDIMENSIONAL POR 1 ÍNDICE?

Existe uma operação ou precisa ser feita em loop?

https://docs.mql4.com/ru/array/ArrayCopy
 
Chiripaha:

Nem por isso...

Eu queria fazer com que houvesse algo como um menu. Assim como na variável bool ou falsa ou verdadeira.
Para que o usuário só possa clicar em valores de parâmetros claramente definidos. Para que ele não entre "erroneamente" em desnecessários, pois, neste caso, o Assessor Especialista não trabalhará corretamente.

O usuário é até eu mesmo. Como é possível esquecer que parâmetros devem existir para uma determinada variável.


Neste caso, você deve fazer isso. Variável externa do tipo Bool. Se == falso, às variáveis serão atribuídos alguns valores, se verdadeiro - outros. Se houver mais de dois Os parâmetros são mais de dois -- use uma variável do tipo int em vez de uma variável booleana e com 1 -- primeiro conjunto, 2 -- segundo conjunto, etc.

Isto pode ser feito para cada variável externa ou para todas elas de uma vez (primeiro modo EA, segundo ...)

 
 
peco:

Sinto muito, não consigo encontrar... pode me dizer, por favor?

COMO MOVER TODOS OS ELEMENTOS DE UMA MATRIZ UNIDIMENSIONAL POR 1 ÍNDICE?

Existe uma operação ou precisa ser feita em loop?


https://www.mql5.com/ru/forum/131859/page8#434278
 
Chiripaha:

Nem por isso...

Eu queria fazer algo como um menu. Assim como na variável bool ou falsa ou verdadeira.
Para que o usuário possa clicar apenas em valores claramente definidos do parâmetro. Para que ele "erroneamente" não entre com os desnecessários, pois, neste caso, o Consultor Especialista não trabalhará corretamente.

O usuário é até eu mesmo. Como é possível esquecer quais parâmetros devem estar presentes para uma determinada variável.

A MQL4 não tem essa possibilidade (mas a MQL5 tem). Você pode verificar este parâmetro na inicialização e se ele não corresponder a um determinado valor, então sinalize um erro. Então, logo no início, deve ser verificado. Eu o fiz em minha EA, por exemplo:

extern int  val=5;
       bool val_error=false;
// -----
init()
{  ...
   if (val!=5  || val!=10 || val!=20 || val!=40 ||
       val!=60 || // и т.д.)
      {   val_error=true;
          Alert("Неправильный val!");
      }
   ...
}
// -----
start()
{  if (val_error=true) return;
   ...
}
Razão: