최대 및 최소 표시 따옴표 - 페이지 3

 
FirstVisibleBar()의 시작 값이 잘못된 이유는 무엇입니까?

그래프 의 기하학적 치수는 변경되지 않습니다.

FirstVisibleBar( ) = BarsPerWindow( ) - 오른쪽 가장자리에서 들여쓰기;

BarsPerWindow( ) = const, 기간 또는 데이터에 종속되지 않습니다.

오른쪽 가장자리에서 들여쓰기 = const, 마침표 및 데이터에 의존하지 않습니다.
 
FirstVisibleBar()의 стартовое значение 잘못된 이유는 무엇입니까?
FirstVisibleBar( ) = BarsPerWindow( ) - 오른쪽 가장자리에서 들여쓰기;

이 공식을 어디서 얻었습니까?

차트에서 첫 번째로 보이는 막대와 차트 창에 들어가는 막대의 수 는 아무 상관이 없습니다.
 
패딩이 없을 때 FirstVisibleBar( ) = BarsPerWindow( ).

이러한 조건에서 FirstVisibleBar()는 기간을 전환할 때 여전히 잘못된 시작 값을 갖습니다.
 

패딩이 없을 때 FirstVisibleBar( ) = BarsPerWindow( ).

그래서 무엇? 그래프를 오른쪽과 왼쪽, 시작 부분(홈 버튼 사용)으로 스크롤하고 FirsVisibleBar 함수에서 제공한 값을 확인합니다. 그 직전에 차트 자동 스크롤을 비활성화하십시오.
 
Belkor 는 매우 흥미로운 질문을 했습니다. 돕다.

연결해야 하는 시스템 기능 및 라이브러리
- 현재 차트의 세로 및 가로 크기를 픽셀 단위로 가져옵니다.
- 현재 차트의 최대 및 최소 가시적 따옴표를 얻습니다.
- 창에서 확장된 차트의 총 수 얻기 ???

MQL4 언어를 적절한 기능으로 보완하는 것이 합리적일까요?
 
차트의 오른쪽 가장자리에서 들여쓰기가 있는지 여부를 고려하여 현재 차트 창의 막대 수를 반환하는 함수가 필요합니다.
 

차트의 오른쪽 가장자리에서 들여쓰기가 있는지 여부를 고려하여 현재 차트 창의 막대 수를 반환하는 함수가 필요합니다.

무엇 때문에?
들여쓰기가 있음에도 불구하고 차트 창을 완전히 채울 수 있습니다.
그리고 들여쓰기가 없음에도 불구하고 차트 창이 채워지지 않을 수 있습니다.
 
사용자는 오른쪽 가장자리에서 들여쓰기가 있는 그래프를 사용합니다. 이러한 차트에는 몇 개의 막대가 표시됩니까? 기간, 역사, 스크롤링 및 기타 모든 것과 무관한 순수한 기하학적 상수입니다.

20회 이상의 경련 값 변경과 FirstVisibleBar( ) 지연은 개인적으로 용납할 수 없습니다.
 
개발자 여러분, 말씀해 주십시오.

어떤 시스템 기능과 라이브러리를 연결해야 하는지

- 현재 차트의 세로 및 가로 크기를 픽셀 단위로 가져옵니다.
- 현재 차트의 최대 및 최소 가시적 따옴표를 얻습니다.
- 창에서 확장된 차트의 총 수 얻기 ???

MQL4 언어를 적절한 기능으로 보완하는 것이 합리적일까요?

고맙습니다.
 
1. user32.dll에서 GetClientRect
2. 특별한 기능은 없습니다. FirstVisibleBar() 및 BarsPerWindow()를 기반으로 직접 계산할 수 있습니다.
3. "창의 총 그래프 수"는 무엇입니까? 표시기가 있는 하위 창을 의미하는 경우 내장된 WindowsTotal() 함수가 도움이 될 것입니다. 클라이언트 터미널에서 열린 차트 를 의미하는 경우 이를 직접 확인할 수 있는 방법은 없습니다. 자체 dll의 해당 WinAPI 기능을 통해서만 가능합니다.

이제 우리는 언어에 아무것도 추가하지 않을 것입니다.