MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 758

 
그래프의 수직 스케일 을 보는 방법은 무엇입니까? 세로 눈금을 늘릴 때 타원을 변경합니다.

뭔가 작동하지 않습니다:

 //+------------------------------------------------------------------+
//| Функция получает значение масштаба графика в пунктах на бар.     |
//+------------------------------------------------------------------+
double ChartPointsPerBarGet( const long chart_ID= 0 )
  {
//--- подготовим переменную для получения результата
   double result= EMPTY_VALUE ;
//--- сбросим значение ошибки
   ResetLastError ();
//--- получим значение свойства
   if (! ChartGetDouble (chart_ID, CHART_POINTS_PER_BAR , 0 ,result))
     {
       //--- выведем сообщение об ошибке в журнал "Эксперты"
       Print ( __FUNCTION__ + ", Error Code = " , GetLastError ());
     }
//--- вернем значение свойства графика
   return (result);
  }
스크립트:
파일:
6maxvt1.mq4  3 kb
 
multiplicator :
동그라미 개체가 있습니까? 아니면 그냥 타원?
예를 들어, 여기에 코드 108, 161, 162, 163 이 있습니다 .
 
Alexey Viktorov :
예를 들어, 여기에 코드 108, 161, 162, 163 이 있습니다 .
그러나 그들은 증가할 수 없습니다.

물체의 바닥이나 상단에만 바인딩합니다.
 
multiplicator :
그러나 그들은 증가할 수 없습니다.

개체의 바닥이나 상단에만 바인딩합니다.

CCanvas 배우기

Документация по MQL5: Стандартная библиотека / Пользовательская графика
Документация по MQL5: Стандартная библиотека / Пользовательская графика
  • www.mql5.com
Отдельно разработаны классы для создания графических объектов и примитивов, для отрисовки различных видов диаграмм и кривых. Реализованы различные возможности отображения объектов: изменение стиля и цвета линий, заливка, работа с сериями данных на графике и т.д.
 
Artyom Trishkin :

CCanvas 배우기

또는 공식...

객체는 선분으로 그릴 수 있습니다.
다음은 크기 조정 시 동일한 예입니다.

하나

2

 
multiplicator :
그러나 그들은 증가할 수 없습니다.

물체의 바닥이나 상단에만 바인딩합니다.

누가 당신이 할 수 없다고 말했습니까?

이것이 그래픽 개체인 경우 글꼴 크기를 늘릴 수 있고 표시기가 버퍼링 하는 경우 두께를 늘릴 수 있습니다.

이것은 손으로 수행되며 충분히 부지런하지 않습니다. 프로그래밍 방식으로 더 정확하게 만들 수 있습니다.


 
Artyom Trishkin :

CCanvas 배우기

뭔가 작동하지 않습니다

 #include <Canvas\Canvas.mqh>
CCanvas can;



void OnStart ()
{

int x;
int y;

int count= 1 ;         // сколько копируем


datetime Time [];
ArraySetAsSeries ( Time , true );
CopyTime ( _Symbol , _Period , 0 ,count, Time );


double Close [];        
ArraySetAsSeries ( Close , true );
CopyClose ( _Symbol , _Period , 0 ,count, Close );


ChartTimePriceToXY ( 0 , 0 , Time [ 0 ], Close [ 0 ],x,y);
  
   
can.FillCircle(x,y, 100 , ColorToARGB (Red));
   
}
 

요컨대, 나는 타원에 칠면조를 만들었습니다.

그러나이 타원은 어떻게 든 너무 추악하게 서로 겹쳐져 있습니다 ...

이러한 모든 개체가 하나로 병합되도록 이 겹치는 효과를 피할 수 있습니까?



m1의 경우:

파일:
 

이제 타원의 위쪽과 아래쪽을 따라 2개의 빨간색 선을 그려야 합니다(그림에 표시된 대로).



아무도 이것을 어떻게 할 수 있는지 알고 있습니까?

 
multiplicator :

이제 타원의 위쪽과 아래쪽을 따라 2개의 빨간색 선을 그려야 합니다(그림에 표시된 대로).



아무도 이것을 어떻게 할 수 있는지 알고 있습니까?

그리고 순전히 미학을 위해 막대 사이의 중간 지점 측면에서 왜 그것이 필요합니까?

각 막대에 대해 버퍼(채널의 상단 및 하단에 대해)를 생성하고 막대의 모든 원에서 극값을 배치할 것이며, 수치로 판단하여 최대 10개까지 확인할 수 있는 창이 있습니다. 막대가 표시되면 마지막 막대를 다시 그릴 수 있음이 분명합니다.