Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1933
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
Você pode me dizer como gerenciar a seqüência de planos (primeiro plano, fundo) de objetos gráficos? Por exemplo, tenho um pequeno campo de informações quadrado com um gráfico debaixo dele, e uma linha de tendência está subindo no próprio campo, e uma etiqueta está se escondendo debaixo do campo.
Artyom, eu provavelmente não entendi bem, talvez tenha feito a pergunta tortuosamente:
Existem três (quatro, cinco...) objetos feitos pelo homem (ObjectCreate). O primeiro se esconde atrás do terceiro, o segundo está em primeiro plano. Como definir um para primeiro plano, segundo para segundo, terceiro para segundo plano. Para que o primeiro objeto seja sempre visível, o segundo é sempre visível, mas não atrás do primeiro. O terceiro objeto também é sempre visível, mas não atrás do primeiro e do segundo. É uma espécie de alternância de planos.
Eu simplesmente não entendia bem a TF.
Artyom, eu provavelmente não entendi bem, talvez tenha feito a pergunta erroneamente:
Existem três (quatro, cinco...) objetos feitos pelo homem (ObjectCreate). O primeiro se esconde atrás do terceiro, o segundo está em primeiro plano. Como definir um para primeiro plano, segundo para segundo, terceiro para segundo plano. Para que o primeiro objeto seja sempre visível, o segundo é sempre visível, mas não atrás do primeiro. O terceiro objeto também é sempre visível, mas não atrás do primeiro e do segundo. Uma espécie de plano alternado.
Eu simplesmente não entendia bem o TF.
Faça um revezamento como descrito acima para cada um de seus objetos. A alternância afetará o layout. O último ao qual esta ação será aplicada será o mais alto.
Uma vez que você tenha determinado que qualquer objeto gráfico que deveria estar abaixo de seus objetos apareceu no gráfico, faça alternadamente uma exibição oculta para cada um de seus objetos (como eu escrevi acima). Esta ação traz o objeto para o primeiro plano do gráfico. Seu primeiro objeto ao qual esta ação foi aplicada estará na parte inferior (mas acima de qualquer outro objeto gráfico desenhado no gráfico depois que seus objetos tiverem sido criados), o segundo estará acima do primeiro, o terceiro estará acima do primeiro e segundo, e assim por diante. Todos os objetos que foram ocultos estarão acima do resto dos objetos gráficos.
Ou seja, a ordem em que os objetos escondidos são aplicados a seus objetos estabelece sua ordem um acima do outro. Mas todos eles aparecerão acima de tudo no gráfico.
A lógica é esta:
Se qualquer objeto gráfico aparecer no gráfico que não deva sobrepor seus objetos, você faz uma exibição oculta para cada um de seus objetos na ordem em que eles devem aparecer visualmente (primeiro na parte inferior, último na parte superior). Depois de esconder-exibir todos os seus objetos, faça ChartRedraw().
Isto é importante - redesenhar a carta somente depois que todos os seus objetos tiverem sido ocultos - para que visualmente não haja cintilação na carta.
Faça à vez o que foi descrito acima para cada uma de suas propriedades. A rotação afetará o posicionamento. O objeto mais recente ao qual esta ação é aplicada será o mais alto.
Uma vez que você tenha determinado que qualquer objeto gráfico que deveria estar abaixo de seus objetos apareceu no gráfico, faça alternadamente uma exibição oculta para cada um de seus objetos (como eu escrevi acima). Esta ação traz o objeto para o primeiro plano do gráfico. Seu primeiro objeto ao qual esta ação foi aplicada estará na parte inferior (mas acima de qualquer outro objeto gráfico desenhado no gráfico depois que seus objetos tiverem sido criados), o segundo estará acima do primeiro, o terceiro estará acima do primeiro e segundo, e assim por diante. Todos os objetos que foram ocultos estarão acima do resto dos objetos gráficos.
Ou seja, a ordem na qual os objetos escondidos são aplicados a seus objetos determina sua ordem uns sobre os outros. Mas todos eles aparecerão acima de tudo no gráfico.
A lógica é esta:
Se qualquer objeto gráfico aparecer no gráfico que não deva sobrepor seus objetos, você faz uma exibição oculta para cada um de seus objetos na ordem em que eles devem aparecer visualmente (primeiro na parte inferior, último na parte superior). Depois de esconder-exibir todos os seus objetos, faça ChartRedraw().
Isto é importante - redesenhar a carta somente depois que todos os seus objetos tiverem sido ocultos - para que visualmente não haja cintilação na carta.
Por gentileza, mais uma coisa: mudou de monitor 2k para laptop 1080 e todo o texto ficou muito grande e sobrepôs-se um ao outro. Favor aconselhar como resolver este problema
É mais complicado do que isso. Você precisa usar recursos para produzir gráficos. Leia TextSetFont() - trata-se do tamanho da fonte em pixels lógicos.
Assim, TextOut() - sobre a saída de texto do recurso. Você pode encontrar tudo sobre isso na documentação.
É mais complicado do que isso. Você precisa usar recursos para produzir gráficos. Leia TextSetFont() - trata-se do tamanho da fonte em pixels lógicos.
Assim, TextOut() - sobre a saída de texto do recurso. E tudo sobre isso - através de links na documentação.
Consegui! Muito obrigado.
Por favor, mais uma coisa: mudei de um monitor de 2k para um laptop 1080 e todo o texto ficou grande e sobrepôs-se um ao outro. Favor aconselhar como resolver este problema
Com a ajuda do Windows. As fontes grandes e pequenas também devem ser ajustadas.
E se houver dois monitores? Diferentes...