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

 
디렉토리는 여전히 러시아어로 되어 있습니다 ...... 디렉토리와 파일 이름을 KIB PROJECTS처럼 영어로 할 수 있으면 좋겠습니다 ...... 이것은 저의 작은 요청입니다!
 
#include<(2)  KIB PROJECTS\(6) DEMO PROJECTS\Demo project 1.mqh>

데모 프로젝트 1은 (1) KIB 소스 1에 포함되어 있는데 다이어그램에 관련 창이 표시되지 않는 이유는 무엇인가요?

 
hini #:
카탈로그는 아직 러시아어로 되어 있습니다 ...... 카탈로그와 파일 이름을 KIB PROJECTS ....... 로 영문으로 할 수 있으면 좋겠습니다. 이것은 저의 작은 요청입니다!
물론 카탈로그를 영어로 번역한 후 코도베이스에 업로드하겠습니다. 다만 시간이 없어서요. 이것은 공개 테스트를 위한 임시 버전입니다.
 
hini #:

데모 프로젝트 1은 (1) KIB 소스 1에 포함되어 있는데 다이어그램에 관련 창이 표시되지 않는 이유는 무엇인가요?

이상하네요. 지금 확인해 보겠습니다.
 
hini #:

데모 프로젝트 1은 (1) KIB 소스 1에 포함되어 있는데 다이어그램에 관련 창이 표시되지 않는 이유는 무엇인가요?

어셈블리를 확인했습니다. 데모 프로젝트 1.mqh는 여기에 있습니다:

(2) KIB PROJECTS\(6) DEMO PROJECTS\Demo project 1.mqh


 
잠시 후에 릴리스에 대한 자세한 분석을 해드리겠습니다.
 

어제 새 버전을 다운로드 한 후 많은 작업과 감정적 인 고조 끝에 말 그대로 새로운 기능을 칭찬하는 매우 긍정적 인 게시물을 썼습니다. 이러한 열정은 엄격한 기술 토론의 맥락에서 그다지 적절하지 않습니다. 오늘은 차분하고 편견 없는 방식으로 구현된 솔루션을 살펴보고자 합니다. 건설적인 비판과 객관적인 평가를 환영합니다. 타사 사용자의 관점을 명확히 파악하는 것이 중요합니다. 피드백은 조정과 개선에 도움이 됩니다. 물론 버그를 감지하고 수정하는 데도 도움이 됩니다.

 
릴리스에 대한 자세한 내용을 살펴보겠습니다.
 
중요한 정보를 더 오래 볼 수 있도록 새 페이지에서 시작하겠습니다.
 


이 작업은 프로그램의 그래픽 인터페이스와 사용자 코드의 프로그래밍 방식의 상호 작용을 구현하는 것으로 설정되었습니다.

아이디어에 따르면

  • KIB 코드를 작성하고 디버깅한 후 사용자는 원하는 결과(준비된 창 형태)를 얻고 프로젝트를 저장합니다.
  • 생성 결과 기술 UIDATA.mqh와 "API.mqh"의 두 가지 파일이 있습니다. 첫 번째는 인터페이스의 로딩 및 작동에 필요하고 두 번째는 요소의 이벤트를 수정하는 데 필요합니다.
  • 사용자는 두 파일을 파일 폴더에서 자신의 프로젝트로 전송합니다(현재: KIB 프로젝트\(5) 사용자 프로젝트\프로젝트 1).
  • 엔진과 두 파일을 연결하는 선으로 전문가 보조지표 또는 인디케이터를 컴파일합니다:
//+------------------------------------------------------------------+
#include<(1)  KIB 1.0\(4) CONNECTIONS\KIB-DRIVE CONNECTIONS.mqh>
//--------------------------------------------------------------------
#include<(2)  KIB PROJECTS\(5) USER PROJECTS\Project 1\UIDATA.mqh>
//--------------------------------------------------------------------
#include<(2)  KIB PROJECTS\(5) USER PROJECTS\Project 1\API.mqh> 
//+------------------------------------------------------------------+
  • 차트에 EA를 띄우고 인터페이스를 확인합니다.
데모 프로젝트에서는 EA 셸 v1.mq5가 예제로 사용되며 , 이는 사용자 지정 프로그램을 "나타내는"것입니다. 여기에는 사용자 아날로그에 필요한 동일한 연결이 있습니다 .

//----------------------------------------------------------------------------------

그러나 이 릴리스 이전에는 사용자는 하위 키가 지정된 API 파일에서 대화형 요소의 이벤트만 수신할 수 있었습니다.

사용자에게 꼭 필요한 소프트웨어 기능이 많지 않았다는점을 강조하는 것이 중요합니다 .

나열해 보겠습니다:

  • 프로그래밍 방식으로 GUI 창 열기/닫기.
  • 다양한 유형의 요소 매개변수에서 값을 가져오거나 설정합니다.
  • 프로그래밍 방식으로 요소의 상태 전환: 예를 들어, 사용자 작업 또는 실행 중인 Expert Advisor/지표에 의해 고정된 외부 이벤트에서 요소를 켜고 끄고 잠금/잠금 해제합니다.
  • 기본, 텍스트, 프레임 색상 등 요소 속성의 다른 값을 프로그래밍 방식으로 가져오거나 설정합니다. 아이콘을 변경합니다.


이 업데이트는 거의 모든 작업을 해결합니다.



몇 가지를 나열해 보겠습니다.
  • 프로그램 호출로 GUI 창을 열거나 닫을 수 있습니다.
  • 사용자는 매개변수가 있는 요소의 매개변수에서 값을 가져오거나 설정할 수 있습니다. 표 셀(CELL) 및 매개변수(VALUE)가 있는 텍스트 레이블과 같은 비대화형 요소를 포함합니다.
  • 서로 다른 유형의 요소의 두 가지 상태와 네 가지 상태 사이를 전환하는 프로그램이 구현됩니다. 버튼과 체크박스의 경우 4가지 상태(켜기/끄기/잠금 켜기/잠금 끄기), 기타 요소의 경우 2가지 상태(잠금/잠금 해제)의 소프트웨어 전환을 사용할 수 있습니다.
  • 프로그램 리턴/설정 값에는 개별 요소 속성의 작은 세트를 사용할 수 있습니다. 각 세트는 인텔리센스 목록이 있는 열기에서 접두사로 표시됩니다. 이는 유사한 속성을 가진 소규모의 관련 요소 그룹을 일반화합니다. 이 접근 방식은 다양한 유형의 요소 속성이 혼동되는 것을 방지합니다.
  • 프로그래밍 방식으로 매개변수에 값을 설정하면 API 파일에서 해당 요소의 위치로 이벤트가 전송되며, 사용자는 이를 처리하기 위한 추가 코드를 작성할 수 있습니다.
  • 표 셀은 행과 열의 이름을 접어서 자동으로 이름이 지정됩니다. 테이블 셀의 이름과 기능적 래퍼는 UIDATA.mqh 파일에서 가져옵니다. 그러나 대화형 요소가 아니기 때문에 API 파일에는 존재하지 않습니다. 창 요소 목록에서 찾을 수 있으며 다른 모든 요소와 마찬가지로 소프트웨어 제어에 반응합니다.


프로그램 제어의 가능성으로 인해 이전에는 사용할 수 없었던 것들이 실현되었습니다:

1. 값 디스패치. 한 요소의 값을 가져와서 같은 창 또는 다른 창에 있는 다른 요소로 전달합니다.

2. 경고 및 대화창의 소프트웨어 열기. 예를 들어, 사용자에게 긴급한 메시지나 권장 사항을 표시해야 하는 상황.

3. 요소 매개변수 쿼리를 통해 설정 및 실행 상태에 대한 일반적인 그림 얻기. 다른 프로그램 매개변수 분석을 보완하는 용도로 사용할 수 있습니다.

4. 작업 프로세스를 중단하지 않고 프로그램 설정을 동적으로 재설정할 수 있습니다.

5. 베이스, 텍스트 및 프레임의 색상을 변경할 수 있어(아직 프레임 없음) 인터페이스가 더욱 상호 작용적이고 유익해졌습니다. 예를 들어, 값을 되감아 위험 영역에 들어가면 버튼이 있는 입력 필드는 빨간색 바탕색이나 텍스트로 사용자에게 위험을 알릴 수 있습니다. 이제 쉽게 구현할 수 있습니다. 슬라이더 바에도 동일하게 적용됩니다. 위험 값 영역에서는 프로그래밍 방식으로 막대의 색상을 변경할 수 있습니다. 대화형이며 유익하고 실용적인 것으로 밝혀졌습니다.


현재로서는 앞으로의 모든 가능성을 완전히 깨닫지 못했고 앞으로 더 많은 것이 있을 것이라고 확신합니다.


다음으로 새 버전에 대한 실용적인 부분으로 넘어가 보겠습니다.