Por favor, dê mais liberdade para gerir as janelas gráficas - página 5

 
joo:
... Hoje em dia, pode desenhar o que quiser com um bitmap numa janela... é um pouco complicado, mas pode fazer o que quiser.
O problema não é que possa ou não possa desenhar - o que precisa é de uma janela gráfica que possa controlar: mover, redimensionar.
 

Como alternativa (esta opção parece-me feia) para aplicaro obj_chart, mas não se pode aplicar-lhe um modelo e adicionar indicadores.

Se fosse possível adicionar indicadores aoobject_chart, penso que seria uma meia-medida aceitável.

 
barabashkakvn:

Como alternativa (esta opção parece-me feia) para aplicaro obj_chart, mas não se pode aplicar-lhe um modelo e adicionar indicadores.

Se fosse possível adicionar indicadores aoobject_chart, penso que seria uma meia-medida aceitável.

É possível adicionar indicadores aoobj_chart usando MQL5, mas também é inconveniente.
 
tol64:
É possível adicionar indicadores aoobj_chart utilizando ferramentas MQL5, mas também é inconveniente.
Sim, pode, usandoOBJPROP_CHART_ID. Eu estava errado - referia-me a adicionar gráficos aoobject_chart numa janela separada.
 
barabashkakvn:

Como alternativa (esta opção parece-me feia) para aplicaro obj_chart, mas não se pode aplicar-lhe um modelo e adicionar indicadores.

Se apenas fosse possível adicionar indicadores aoobject_chart, então, penso eu, seria uma meia-medida aceitável.

barabashkakvn:
Sim, pode, usandoOBJPROP_CHART_ID. Eu estava errado - referia-me à adição de gráficos aoobject_chart na janela de separação.

O object_chart, eu tenho-o: o modelo pode ser aplicado e o indicador adicionado, a janela separadora do objectoobject_chart pode ser definida. Assim, o objecto gráfico nesta fase da MQL5 pode ser praticamente um substituto para uma janela gráfica habitual.

Porquê praticamente?

Se apenas a janela separadora de gráficos pudesse ser colocada não só horizontalmente, mas também verticalmente! Então uma janela separadora vertical poderia tornar-se um verdadeiro substituto para uma janela de mapa regular. E a janela separadora vertical pode ser controlada: ela pode ser redimensionada. Assim, pode implementar o controlo de janelas por meio de MQL5 sem WinAPI.

 
barabashkakvn:

Com o obj_chart, descobri-o: pode aplicar um modelo e adicionar um indicador e uma janela separadora ao objectoobj_chart. Assim, o objecto gráfico nesta fase da MQL5 pode ser praticamente um substituto para uma janela gráfica habitual.

Porquê praticamente?

Se apenas a janela separadora de gráficos pudesse ser colocada não só horizontalmente, mas também verticalmente! Então uma janela separadora vertical poderia tornar-se um verdadeiro substituto para uma janela gráfica padrão. E a janela separadora vertical pode ser controlada: ela pode ser redimensionada. Assim, pode implementar o controlo de janelas por meio de MQL5 sem WinAPI.

Numa janela de objectos gráficos, pode colocar outros objectos do tipo gráfico. Dada a existência de eventos gráficos(CHARTEVENT_MOUSE_MOVE), podemos implementar a gestão de objectos. Não é elementar, mas bastante viável.
 
antt:
Outros objectos do tipo gráfico podem ser colocados na janela do objecto gráfico. Dada a existência de eventos gráficos(CHARTEVENT_MOUSE_MOVE), a gestão de objectos pode ser implementada. Isto não é elementar, mas bastante viável.
ChartNavigate() nos objectos do mapa já em funcionamento ? De alguma forma eu tinha enviado um pedido ao Service Desk com este pedido, mas ainda não obtive uma resposta.
 
tol64:
ChartNavigate() nos objectos do mapa já funciona? Uma vez enviei um pedido ao Service Desk com este pedido, mas ainda não recebi uma resposta.

Funcionou e está a funcionar. Um exemplo simples:

void OnStart()
  {
   ObjectCreate(0,"chart",OBJ_CHART,0,0,0);
   long id=ObjectGetInteger(0,"chart",OBJPROP_CHART_ID);
   ChartSetInteger(id,CHART_AUTOSCROLL,0);
   ChartNavigate(id,CHART_END,0);
   Sleep(1000);
   ChartNavigate(id,CHART_BEGIN,0);
   Sleep(1000);
   ChartNavigate(id,CHART_END,0);
  }
 
antt:

Funcionou e está a funcionar. Um exemplo simples:

Obrigado. Acontece que o meu erro foi não ter desligado o autoscroll no objecto gráfico. )

Óptimo. A rolagem horizontal no objecto gráfico pode então ser implementada por si só.

 
tol64:

Obrigado. Acontece que o meu erro foi não ter desligado o autoscroll no gráfico do objecto. )

Óptimo. A rolagem horizontal no objecto gráfico pode então ser implementada por si só.

E como fazer "Crosshair" funcionar em objecto gráfico - quero dizer, quando "Crosshair sobre objecto gráfico" é realizado, os dados OHLC são exibidos na barra de estado?