Erros, bugs, perguntas - página 1258
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
A propósito, quem sabe como fazer isso quando se clica no botão, seria apertado se o LKM fosse premido e libertado se o LKM fosse libertado?
e o que é que premia o botão para clicar e soltar e o que é que solta o botão para clicar e soltar, disparate)
ZS: claro que pode mudar uma propriedade logo após libertar o LKM, mas é assim que se faz? )
A propósito, quem sabe como fazer isso quando se clica no botão, seria apertado se o LKM fosse premido e libertado se o LKM fosse libertado?
e o que é que premia o botão para clicar e soltar e o que é que solta o botão para clicar e soltar, disparate)
ZS: claro que pode mudar uma propriedade logo após libertar o LKM, mas é assim que se faz? )
Sim. Terá de controlar o estado do objecto você mesmo, se quiser fazê-lo à sua maneira. )
tudo estaria bem, mas o botão não é premido quando o LKM é premido, e premido apenas quando o LKM é libertado, disparate )
ZS: quer carregar no botão? solte-o )
Mas se fizer o contrário, dado queOnChartEvent não funciona no testador, então, em geral, nenhuma maneira no testador com as cópias das cópias pode não funcionar.
tudo estaria bem, mas o botão não é premido quando o LKM é premido, e premido apenas quando o LKM é libertado, disparate )
ZS: quer carregar no botão? solte-o )
Mas se fizer o contrário, dado queOnChartEvent não funciona no testador, então, em geral, de modo algum no testador com lops.
Até agora, o provador tem muitas coisas que não funcionam. Permanece para escrever em servicedesk e depois seguir as actualizações. )
E, fora do testador, tem de escrever os seus próprios manipuladores para que os controlos funcionem da forma que deseja.
tudo estaria bem, mas o botão não é premido quando o LKM é premido, e premido apenas quando o LKM é libertado, disparate )
ZS: quer carregar no botão? solte-o )
Mas se fizer o contrário, dado que OnChartEvent não funciona no testador, então de modo algum no testador com cópias de não funcionar.
OnChartEvent() trata de eventos típicos e de utilizadores. No que diz respeito a eventos personalizados, este manipulador no Testador funciona!!! Ver o meu artigo Prescrições na MQL5 - Manuseamento de eventos de cartas personalizadasExiste aí um robô CustomEventProcessor. Comercializa no Testador.
O problema do testador - são os gráficos... Escrevi anteriormente ao Service Desk sobre gráficos, até agora só promessas...
OnChartEvent() trata de eventos gráficos típicos e eventos personalizados. No que diz respeito a eventos personalizados, este manipulador no Testador funciona!!! Ver o meu artigo Prescrições na MQL5 - Manuseamento de eventos de cartas personalizadasExiste aí um robô CustomEventProcessor. Comercializa no Testador.
O problema com o testador são os gráficos... Já escrevi anteriormente ao Service Desk sobre gráficos, só promessas até agora...
A situação é a seguinte: Eu crio um objecto OBJ_TEXT no gráfico. Depois apago manualmente este OBJ_TEXT do gráfico. Depois tento encontrar o objecto eliminado no gráfico e obtenho um erro (isto é lógico: o objecto foi eliminado, por isso não pode ser encontrado). Depois tento mover o ponto de ancoragem do objecto OBJ_TEXT eliminado com ObjectMove, mas não recebo nenhum erro.
Pergunta: deve ObjectMove dar um erro ao tentar mover o ponto de ancoragem de um OBJ_TEXT eliminado?
Avisar quem sabe: ao tentar exibir um indicador no visualizador (testador), aparece um erro 4014, embora tal erro não ocorra ao executar o mesmo código na janela do terminal.
O código é o seguinte:
Indic_Handle[Indic_Total-1]=iMA(NULL,0,MA_Period,MA_Shift,MODE_LWMA,PRICE_CLOSE);
if(Indic_Handle[Indic_Total-1]==INVALID_HANDLE)
{Error_Message;return(false);}
if(F_If_Indic_Exist(Indic_Handle[Indic_Total-1])==false) // Проверяем есть ли уже индикатор с таким хендлом. Если нет - добавлем новый индикатор
if(ChartIndicatorAdd(0,0,Indic_Handle[Indic_Total-1])==false)
{Error_Message;return(false);}
O comando "Error_Message" é definido por uma macro:
#define Error_Message_Exp Alert(__FILE__+": "+__FUNCTION__+": Error at line "+(string)__LINE__+". Last Error code: "+(string)GetLastError())
Quando executado no terminal: O código funciona como deveria, sem erros. O indicador é traçado no gráfico, à variável"Indic_Handle[Indic_Total-1]" é atribuído um valor de manípulo.
Mas quando executado no testador e/ou no visualizador. É impresso um erro no registo:
2014.12.15 21:16:10 Core 1 2014.01.01 00:00:00 Alert: GA_Incl.mqh: F_Offspr_Init: Error at line 149. Last Error code: 4014
(linha "149" - é a linha"{Error_Message;return(false);}" sob a linha "148":"if(ChartIndicatorAdd(0,0,Indic_Handle[Indic_Total-1])==false)".
O erro ocorre obviamente quando se executa a função "ChartIndicatorAdd" que é executada de forma diferente no ambiente de teste e no ambiente terminal.
A descodificação do código de erro não o torna claro:
ERR_FUNCTION_NOT_ALLOWED
4014
A função do sistema não pode ser chamada
No fórum, encontrei uma menção deste erro ocorrendo na mesma situação por outro utilizador, mas a sua pergunta continua sem resposta. (https://www.mql5.com/ru/forum/1111/page763#comment_208678)
Descobri que se eu continuar a executar o programa no testador apesar do erro, o indicador requerido será aplicado ao gráfico. Mas o cabo indicador não corresponde ao valor da variávelIndic_Handle[Indic_Total-1]. (Mas o próprio indicador é criado após alguns ticks, depois de chamar o comando ChartIndicatorAdd.
Por favor, ajude-me
Obrigado.
Certo, não se imprime. Mas funciona. Tente acompanhar o evento com gráficos.