MQL로 작성된 UI 갤러리 - 페이지 45

 
hini #:
GIF를 다운로드했는데 내 OS에 문제가 있는지 확실하지 않습니다. 그냥 신고했습니다.
신고해 주셔서 감사합니다. 차트 크기 조정 옵션은 테스트해 보지 않았습니다. OnChartEvent()에서 이벤트를 확인해 보겠습니다.


 
hini #:
GIF를 다운로드했는데 내 OS에 문제가 있는지 확실하지 않습니다. 그냥 신고하려고요.
네, 원인을 찾았습니다. 차트의 크기를 다른 방식으로 조정하면 다양한 조합의 OnChartEvent() 이벤트가 발생합니다. 수동으로 변경할 때 OnChartChange 이벤트가 2 번 발생합니다 (확인했습니다). 차트를 전환할 때 - 한두 번. 내비게이터 창을 한 번 닫을 때 다른 이벤트는 CharEvent 사용자 정의로옵니다. 터미널 창을 다른 모니터로 이동할 때-한 번.

일반적으로 차트 크기를 변경할 때 이벤트 조합의 모든 변형을 포착하는 조건을 작성해야합니다.
 
차트 크기를 단순히 이전에 기록된 차트 크기 와 비교하여 확인할 수 없는 이유를 추가하고 싶습니다.

차트를 전환할 때 차트 크기의 ChartGetInteger() 함수가 잘못된 값을 전송하면 알고리즘이 크기가 변경된 것으로 "생각"하고 작업 표시줄이 제자리에서 "점프"합니다. 이 문제를 해결하기 위해 많은 노력을 기울여야 했습니다. 이제 이러한 이벤트에서 차트 크기의 어떤 값이 ChartGetInteger() 함수에 보고되는지 확인해 보겠습니다.
 
즉, 차트를 전환할 때 크기는 변경되지 않지만 ChartChange 이벤트가 발생하지만 어떤 이유로 ChartGetInteger() 함수는 항상 480(너비) 및 167(높이) 크기를 보고합니다. 항상 모든 차트 크기에서. (빌드 2470. 새 버전은 아직 확인하지 않았습니다).
 
새 빌드(4435)에서 차트를 전환할 때 ChartGetInteger() 함수는 너비 490, 높이 103 값을 반환합니다. 실제 차트 크기는 너비 1068, 높이 438입니다.

차트를 전환할 때 크기는 변경되지 않습니다.
 
이러한 조건을 바탕으로 차트 크기의 실제 변경 사항과 잘못된 변경 사항을 구별하기 위해 들어오는 이벤트의 특성을 계속 연구 할 것입니다. 그리고 개발자가 기능을 수정하면 코드를 단순화 할 것입니다. :)
 
다양한 차트 크기 조정 이벤트를 테스트했습니다. 문제는 실제 크기 조정이 발생하지 않는 차트 전환에서만 발생하는 것으로 보입니다. 하지만 ChartGetInteger() 함수는 지속적으로 490에서 103을 보고합니다.

다른 이벤트에서는 모든 것이 정상입니다.


다음 릴리스에서 작업 표시줄이 수정될 예정입니다.
 
Реter Konow 차트 크기 조정 이벤트를 테스트했습니다. 이 문제는 차트가 전환될 때만 발생하는 것으로 보이며, 이 경우 실제 크기 조정은 발생하지 않습니다. 그러나 ChartGetInteger() 함수는 일관되게 490에서 103을 보고합니다.

다른 모든 이벤트는 정상입니다.


작업 표시줄 문제는 다음 릴리스에서 수정될 예정입니다.
여러분의 노고에 감사드립니다! 앞으로의 작업도 기대하겠습니다.
 
hini #:
그동안의 노고에 감사드립니다! 여러분의 작품을 기대하겠습니다.
감사합니다!
 

정리, 재컴파일, 재설치.

제가 발견한 사항을 특별한 순서 없이 나열해 보겠습니다:

1. 창을 열면 작업 표시줄에 아무것도 나타나지 않습니다. 창을 최소화하면 버튼이 나타납니다. 펼친 후에도 사라지지 않습니다. "Windows에서와 같은"동작의 개념이 생각되면 한 번에 나타나야합니다.

2. 동적 창에서는 커서를 최소화 및 최대화 버튼 위로 이동한 후에도 커서가 창 안에 있는 한 버튼이 강조 표시된 상태로 유지됩니다.

3. 동적 창에서는 헤더가 확장된 회색으로 바뀌고, 돌아온 후에도 회색으로 유지되며, 최소화하고 돌아온 후에만 색상이 복원됩니다.

4. 확장된 창은 차트에서 시간 및 가격 눈금을 숨기지 않습니다.

5."i, AT, _X2X, "MF", 5, _Y2H, "Report", 5," 명령으로 "H_TAB, "Report" 아래에 배치한 테이블은 왼쪽 가장자리 설정을 무시합니다."i, AT, _X2X, "MF", 5, _Y2Y, "MF", 20,"도 마찬가지입니다.

6. 가장 중요한 것은. 동적 창에서 V_BOX를 허용하지 않는다는 사실이 제 디자인을 완전히 바꿔놓았습니다. 두 개의 표는 위치를 쉽게 지정하고 스크롤하기 쉽도록 각각의 상자에 있었습니다. 이제 "MF"에 직접 그려야 했기 때문에 하단 테이블을 상단 테이블 바로 아래에 배치할 수 없습니다. 바인딩 "i, AT, _X2X, "MF", 5, _Y2H, "Table1", 5," 그룹 이름 Table1이 요소가 아니기 때문에 바인딩이 작동하지 않습니다. 테이블의 마지막 행에 바인딩할 수는 있었지만 동적 테이블에서는 이 방법을 사용할 수 없습니다. 그룹이 아닌 테이블을 참조하는 방법을 찾지 못했습니다. 프로그래밍 방식으로 테이블에 행을 추가하려는 경우 테이블을 주소 지정하는 방법을 가정합니다.

7. 한 가지 더. 동적 창은 확장 및 축소할 수 있는 피어 창입니다. 저는 창이 아니라 데스크톱을 원합니다. 생성자에서처럼요. 그래서 그것은

a) 전체 차트를 포함하여 한 번에 확장되어 열립니다.

b) 헤더와 프레임이 없어야 합니다(작업 표시줄만).

c) 접을 수 없습니다.

d) 일반 창처럼 항목을 배치할 수 있습니다.

즉, DINAMIC을 전체화면 또는 데스크톱으로 바꾸세요. 이미 이에 대한 근거가 있습니다.