Alexey Petrov: Os links foram corrigidos. Obrigado pela mensagem.
Os erros permanecem.
Parágrafo de introdução:
...
Antes de começar a desenhar diretamente com a classe CCanvas, você precisa aprender algumas definições relacionadas ao manuseio de cores. Por exemplo, o que é transparência e o que é um canal alfa.
...
Item "5.1 Criar um script "Illusion.mq5""
...
Desenhe um círculo pintado. O círculo será desenhado sobre a cor com a qual preenchemos a tela (canvas_XRGB_NOALPHA.Erase(ColorToARGB(colr,alpha));).
canvas_XRGB_NOALPHA.CreateBitmapLabel - Aqui criamos um recurso gráfico vinculado ao objeto gráfico.
Output text - tipo de processamento de imagem para essa tela. Cor do texto no formato ARGB com canal alfa igual a 255, ou seja, a cor do texto de saída.
Se quisermos que tudo o que foi desenhado seja exibido na tela, precisaremos atualizar a tela.
Como criamos o recurso gráfico com uma vinculação ao objeto gráfico ( método CreateBitmapLabel), excluiremos o recurso usando o método Destroy().
Saudações, pessoal, vocês podem me dizer como criar o painel de informações de modo que os ícones das ofertas não fiquem sobrepostos.
Ele parece estar em primeiro plano, tudo está desenhado atrás dele, mas as ofertas estão sobrepostas.
void CreateEdit(long chart_id, // id do gráficoint sub_window, // número da janela (subjanela)string name, // nome do objetocolor font_color, // cor da fonteint x_size, // larguraint y_size, // alturaint x_distance, // Coordenada do eixo Xint y_distance, // Coordenada do eixo Ylong z_order, // prioridadecolor background_color) // cor de fundo
{
// Se o objeto foi criado com sucesso, então...if(ObjectCreate(chart_id,name,OBJ_RECTANGLE_LABEL,sub_window,0,0))
{
// ...definir suas propriedadesObjectSetInteger(chart_id,name,OBJPROP_CORNER,CORNER_LEFT_UPPER); // definição do ângulo do gráficoObjectSetInteger(chart_id,name,OBJPROP_COLOR,font_color); // cor da fonteObjectSetInteger(chart_id,name,OBJPROP_BGCOLOR,background_color); // cor de fundoObjectSetInteger(chart_id,name,OBJPROP_XSIZE,x_size); // larguraObjectSetInteger(chart_id,name,OBJPROP_YSIZE,y_size); // alturaObjectSetInteger(chart_id,name,OBJPROP_XDISTANCE,x_distance); // definir coordenada XObjectSetInteger(chart_id,name,OBJPROP_YDISTANCE,y_distance); // definição da coordenada YObjectSetInteger(chart_id,name,OBJPROP_SELECTABLE,false); // objeto não pode ser selecionado se for FALSOObjectSetInteger(chart_id,name,OBJPROP_ZORDER,z_order); // prioridade do objetoObjectSetInteger(chart_id,name,OBJPROP_READONLY,true); // somente leituraObjectSetInteger(chart_id,name,OBJPROP_ALIGN,ALIGN_LEFT); // alinhamento à esquerda//--- exibição em primeiro plano (falso) ou em segundo plano (verdadeiro) ObjectSetInteger(chart_id,name,OBJPROP_BACK,false);
ObjectSetString(chart_id,name,OBJPROP_TOOLTIP,"\n"); // nenhuma dica de ferramenta se "\n".
}
}
MQL4 ;)
Eu não dou boas-vindas à MQL4. Todos os exemplos estão apenas em MQL5.
E o resultado do script:
Vladimir, uma pergunta para você, que é um especialista.
Há um painel na forma de uma tela. E, em seguida, as linhas de tendência são desenhadas no gráfico. Como ocultá-las atrás da tela?
Capturas de tela da plataforma de negociação MetaTrader
RTS Splice, H1, 2016.10.16
JSC ''Otkritie Broker'', MetaTrader 5, Demonstração
Vladimir, uma pergunta para você, que é um especialista.
Há um painel na forma de uma tela. E, em seguida, as linhas de tendência são desenhadas no gráfico. Como ocultá-las atrás da tela?
Obrigado pelo artigo. Infelizmente, todos os links de documentação nele contidos estão quebrados.
Obrigado pela mensagem - a ajuda foi reconstruída, por isso os erros. Corrigiremos os links.
Por meio da classe CCanvas?
P.S. Use CCanvas.CreateBitmap:
Cria um recurso gráfico vinculado a um objeto de gráfico.
1. Cria um recurso gráfico na janela principal do gráfico atual.
bool CreateBitmap(
const string name, // name
const datetimetime, // hora
const doubleprice, // preço
constint width, // largura
const int height, // altura
ENUM_COLOR_FORMAT clrfmt=COLOR_FORMAT_XRGB_NOALPHA// formato
);
Assim, você poderá vincular um canto de um Canvas. Mas a largura e a altura, mesmo assim, serão definidas em pixels.
Posso escrever em russo aqui?
Porque você dá instruções para um, mas, na realidade, professa padrões duplos.
Obrigado pelo artigo. Infelizmente, todos os links para a documentação nele contida estão quebrados.
Os links foram corrigidos. Obrigado pela mensagem.
Os erros permanecem.
Parágrafo de introdução:
...
Antes de começar a desenhar diretamente com a classe CCanvas, você precisa aprender algumas definições relacionadas ao manuseio de cores. Por exemplo, o que é transparência e o que é um canal alfa.
...
Item "5.1 Criar um script "Illusion.mq5""
...
Desenhe um círculo pintado. O círculo será desenhado sobre a cor com a qual preenchemos a tela (canvas_XRGB_NOALPHA.Erase(ColorToARGB(colr,alpha));).
canvas_XRGB_NOALPHA.CreateBitmapLabel - Aqui criamos um recurso gráfico vinculado ao objeto gráfico.
Preencher toda a tela com cor no formato ARGB com transparência alfa
Output text - tipo de processamento de imagem para essa tela. Cor do texto no formato ARGB com canal alfa igual a 255, ou seja, a cor do texto de saída.
Se quisermos que tudo o que foi desenhado seja exibido na tela, precisaremos atualizar a tela.
Como criamos o recurso gráfico com uma vinculação ao objeto gráfico ( método CreateBitmapLabel), excluiremos o recurso usando o método Destroy().
...
Saudações, pessoal, vocês podem me dizer como criar o painel de informações de modo que os ícones das ofertas não fiquem sobrepostos.
Ele parece estar em primeiro plano, tudo está desenhado atrás dele, mas as ofertas estão sobrepostas.