Canvas에서 크라우드소싱 프로젝트 만들기 - 페이지 39

 
Алексей Барбашин :

...

Peter, 당신은 당신의 스타일로 GUI 라이브러리를 만드는 일을 훌륭하게 해냈습니다. 그러나 이 사례를 게시할 계획이라면 다른 기술을 위해 모든 것을 다시 할 가치가 있습니다. 나는 당신을 도울 준비가 되어 있고 당신의 도서관의 모든 힘을 새로운 방향으로 옮기기 위해 단계별로 당신을 도울 준비가 되어 있습니다.

Alexey, 내가 시도하고 싶다고 가정해 봅시다. 이를 위해 어떻게 제안합니까? 작업은 놀랍습니다.
 
Реter Konow :
Alexey, 내가 시도하고 싶다고 가정해 봅시다. 이를 위해 어떻게 제안합니까? 작업은 놀랍습니다.

Peter, 나는 아마 그 양의 일의 작은 부분조차도 상상조차 하지 못할 것입니다. 당신이 지출 한 것, 그리고 나는 단순히 생성 된 개체 의 전체 규모를 과소 평가한다고 확신합니다. 하지만!

항상 그렇듯이 BUT!

프로그래밍에 반드시 필요한 것은 아닌 모든 프로젝트. 일반적인 용어와 특히 둘 다로 간주될 수 있습니다.

우선 생성된 객체에서 추상화합니다. 즉, 행렬이나 구조 또는 클래스로 나타내지 않습니다. OBJECT의 개념을 받아들이도록 합시다(컨트롤, 폼, 전체로서의 인터페이스 등). 객체의 상호 작용을 구조적으로 표현하려고 합니다. 우리가 함께 구축된 것의 구조를 이해할 때 이를 기반으로 패턴을 식별하려고 노력할 것입니다. 원칙적으로 식별할 필요는 없고 오래전에 식별하여 통일처리를 하였으므로 작동원리와 목적만 설명하면 됩니다. 또한 프로젝트의 일부 개체를 다른 개체로 간단히 대체합니다. 물론 이것은 처음부터 작성하는 것보다 훨씬 어려울 것입니다. 그러나 우리의 경우 목표가 약간 다르기 때문에 전반적으로 서두를 곳이 없습니다. 그러나 행렬 알고리즘을 객체로 변환하는 출판물은 초보자뿐만 아니라 아마도 흥미로울 것입니다. 나는 다른 참가자들이 이 작업의 과정에 참여하거나 자신의 아이디어를 표현하거나 이 또는 저 알고리즘의 더 편리한 구현을 제안할 것이라고 확신합니다.

어떤 식으로든 아이디어 자체는 우선 알고리즘의 블록 다이어그램으로 표현되어야 합니다.

나는 내 제안을 했다. 그러나 다른 방법으로 할 수 있습니다. 모두 이 문제(공동 작업)에 대한 귀하의 욕망과 견해에 달려 있습니다.

 
Алексей Барбашин :

Peter, 나는 아마 그 양의 일의 작은 부분조차도 상상조차 하지 못할 것입니다. 당신이 지출 한 것, 그리고 나는 단순히 생성 된 개체 의 전체 규모를 과소 평가한다고 확신합니다. 하지만!

항상 그렇듯이 BUT!

프로그래밍에 반드시 필요한 것은 아닌 모든 프로젝트. 일반적인 용어와 특히 둘 다로 간주될 수 있습니다.

우선 생성된 객체에서 추상화합니다. 즉, 행렬이나 구조 또는 클래스로 나타내지 않습니다. OBJECT의 개념을 받아들이도록 합시다(컨트롤, 폼, 전체로서의 인터페이스 등). 객체의 상호 작용을 구조적으로 표현하려고 합니다. 우리가 함께 구축된 것의 구조를 이해할 때 이를 기반으로 패턴을 식별하려고 노력할 것입니다. 원칙적으로 식별할 필요는 없고 오래전에 식별하여 통일처리를 하였으므로 작동원리와 목적만 설명하면 됩니다. 또한 프로젝트의 일부 개체를 다른 개체로 간단히 대체합니다. 처음부터 작성하는 것보다 확실히 훨씬 더 어려울 것입니다. 그러나 우리의 경우 목표가 약간 다르기 때문에 전반적으로 서두를 곳이 없습니다. 그러나 행렬 알고리즘을 객체로 변환하는 출판물은 초보자뿐만 아니라 아마도 흥미로울 것입니다. 나는 다른 참가자들이 이 작업의 과정에 참여하거나 자신의 아이디어를 표현하거나 이 또는 저 알고리즘의 더 편리한 구현을 제안할 것이라고 확신합니다.

어떤 식으로든 아이디어 자체는 우선 알고리즘의 블록 다이어그램으로 표현되어야 합니다.

나는 내 제안을 했다. 그러나 다른 방법으로 할 수 있습니다. 모두 이 문제(공동 작업)에 대한 귀하의 욕망과 견해에 달려 있습니다.

좋은. 최선을 다하겠습니다. 솔루션과 아키텍처를 설명하겠습니다. 하지만 결국 성공할지 모르겠다.

이제 개체가 커널에서 정렬됩니다. 그것들은 그것을 꺼내서 수업에 배치해야합니다.

1. 세 개의 기본 클래스인 "Rectangle_label"을 만들 것입니다. 여기에는 직사각형 레이블의 모든 기본 속성인 "Icon" 및 "Text"가 포함됩니다. 이러한 개체는 거의 모든 컨트롤의 일부입니다.

2. 또한, 클래스-후계자 그룹을 생성합니다. 다음 기준에 따라 구분됩니다. a) 매개변수를 제어하는 요소. b) 매개변수에 의해 제어되는 요소.

3. 수업에서 각 요소의 특정 속성을 설명합니다.

이것들은 단지 첫 번째 아이디어일 뿐입니다. 아마도 잘못된 것입니다.

이러한 체계를 사용하면 상속이 즉시 여러 가지로 나타납니다. 요소 클래스(상속자)에는 한 번에 세 가지 기본 클래스의 속성이 포함되어야 합니다.

 
Реter Konow :

좋은. 최선을 다하겠습니다. 솔루션과 아키텍처를 설명하겠습니다. 하지만 결국 성공할지 모르겠다.

이제 개체가 커널에서 정렬됩니다. 그것들은 그것을 꺼내서 수업에 배치해야합니다.

1. 세 개의 기본 클래스인 "Rectangle_label"을 만들 것입니다. 여기에는 직사각형 레이블의 모든 기본 속성인 "Icon" 및 "Text"가 포함됩니다. 이러한 개체는 거의 모든 컨트롤의 일부입니다.

2. 또한, 클래스-후계자 그룹을 생성합니다. 다음 기준에 따라 구분됩니다. a) 매개변수를 제어하는 요소. b) 매개변수에 의해 제어되는 요소.

3. 수업에서 각 요소의 특정 속성을 설명합니다.

이것들은 단지 첫 번째 아이디어일 뿐입니다. 아마도 잘못된 것입니다.

이러한 체계를 사용하면 상속이 즉시 여러 가지로 나타납니다. 요소 클래스(상속자)에는 한 번에 세 가지 기본 클래스의 속성이 포함되어야 합니다.

자, 여기에 토론이 있습니다.

"저는 직사각형 레이블의 모든 기본 속성을 포함하는 "Rectangle_label", "Icon" 및 "Text""라는 세 가지 기본 클래스를 만들 것입니다. 일반적으로 첫 번째 개체는 Rectangle 또는 Rect라고 하고 두 번째 개체는 일반적으로 Image입니다. , 세 번째는 별도의 속성으로 설명하거나 별도의 개체로 만들 수도 있습니다. 생성된 데이터 유형 이 C++ 및 mql에서 클래스임을 나타내기 위해서는 유형 이름 앞에 C를 표시하는 것이 일반적입니다. 즉, CRectangle, CImage, CText입니다. 그러나 단순히 이질적인 데이터를 포함하는 단순 유형은 구조로 생성하는 것이 더 편리합니다.

주로 MOST 컨트롤의 모든 기본 속성을 고려하는 것이 좋습니다. 앞으로는 속성을 추가하는 것이 가능하며 문제가 되지 않습니다.

"a) 매개변수를 제어하는 요소. b) 매개변수에 의해 제어되는 요소." - 디코딩이 필요합니다. 나는 그 설명이 무엇을 의미하는지 이해하지 못합니다.

"결국 성공 여부" - 성공 여부를 확인하는 것이 좋습니다. 그렇지 않으면 시작하지 않는 것이 좋습니다.
 
Алексей Барбашин :

자, 여기에 토론이 있습니다.

1. "저는 직사각형 레이블, "Icon" 및 "Text"의 모든 기본 속성을 포함하는 "Rectangle_label"의 세 가지 기본 클래스를 만들 것입니다." - 일반적으로 첫 번째 개체는 단순히 Rectangle 또는 Rect라고 하고 두 번째 개체는 일반적으로 이미지이고 세 번째는 로보를 별도의 속성으로 설명하고 표백 대상으로 만들 수도 있습니다. 생성된 데이터 유형 이 C++ 및 mql에서 클래스임을 나타내려면 유형 이름 앞에 C를 표시하는 것이 일반적입니다(예: CRectangle, CImage, CText).

2. "a) 매개변수를 제어하는 요소. b) 매개변수에 의해 제어되는 요소." - 디코딩이 필요합니다. 나는 그 설명이 무엇을 의미하는지 이해하지 못합니다.

"결국 성공 여부" - 성공 여부를 확인하는 것이 좋습니다. 그렇지 않으면 시작하지 않는 것이 좋습니다.

1. 가장 기본적인 클래스는 CGObject(기본 그래픽 객체)이다. 속성 x, y, x_size, y_sixe 및 다양한 유형의 좌표 앵커가 있어야 합니다. 이는 모든 개체의 공통 속성입니다.

2. 상속인 - CRec, CImage, CText. 그들은 구체적이고 독특한 속성을 가지고 있습니다.

3. 다음으로 창 플랫폼 클래스입니다. 메뉴 창, 설정 창, 대화 창, 동적 창과 같은 몇 가지가 있습니다. 특정 속성 집합이 있습니다.

3. 그런 다음 - 요소 클래스. 최대 50개까지 가능합니다. 범주로 분류: 1) 매개변수 처리 방법에 따라, 2) 장식.

이것이 바로 시작입니다. 결국 라이브러리가 아닌 마크업 언어를 만들어야 합니다. 그렇지 않으면 요점이 무엇입니까?


추신. 대부분의 컨트롤은 지정된 매개변수로 작동합니다. 목적의 본질은 일부 사용자 매개변수를 제어하는 것입니다. 그러나 각 요소는 고유한 방식으로 이를 수행합니다.

ZYY. 추가하는 것을 잊었습니다. 속성이 있는 기본 매개변수 클래스가 필요합니다. 예를 들어 매개변수.

 
Реter Konow :

1. 가장 기본적인 클래스는 CGObject(기본 그래픽 객체)이다. 속성 x, y, x_size, y_sixe 및 다양한 유형의 좌표 앵커가 있어야 합니다. 이는 모든 개체의 공통 속성입니다.

2. 상속인 - CRec, CImage, CText. 그들은 구체적이고 독특한 속성을 가지고 있습니다.

3. 다음으로 창 플랫폼 클래스입니다. 메뉴 창, 설정 창, 대화 창, 동적 창과 같은 몇 가지가 있습니다. 특정 속성 집합이 있습니다.

3. 그런 다음 - 요소 클래스. 최대 50개까지 가능합니다. 범주로 분류: 1) 매개변수 처리 방법에 따라, 2) 장식.

이것이 바로 시작입니다. 결국 라이브러리가 아닌 마크업 언어를 만들어야 합니다. 그렇지 않으면 요점이 무엇입니까?


추신. 대부분의 컨트롤은 지정된 매개변수로 작동합니다. 목적의 본질은 일부 사용자 매개변수를 제어하는 것입니다. 그러나 각 요소는 고유한 방식으로 이를 수행합니다.

나는 뇌의 작은 폭발이 있습니다 ...))이 모든 것을 그려야합니다. 그렇지 않으면 소화되지 않습니다. )

 
Алексей Барбашин :

나는 뇌의 작은 폭발이 있습니다 ...))이 모든 것을 그려야합니다. 그렇지 않으면 소화되지 않습니다. )

)) 아무것도...

CParam 매개 변수 기본 클래스에는 여러 하위 항목이 있습니다. 결론은 요소의 제어된 매개변수에 대한 일반적인 속성이 있고 특정 속성이 있다는 것입니다. 예를 들어 버튼에는 bool의 관리 매개변수 유형이 있고 드롭다운 목록에는 "메뉴" 유형이 있습니다. 즉, 버튼은 1/0을 토글하고 목록 상자는 제한된 선택을 제공합니다. 예를 들어 슬라이더에는 "범위" 매개변수 유형, 즉 범위가 있습니다. 몇 가지 유형이 더 있으며 모두 고유한 속성이 있습니다.

따라서 매개변수의 기본 클래스에서 상속되는 클래스도 있어야 합니다. "CBool", "CRange", "CMenu"와 같은 것입니다.

 
Реter Konow :

)) 아무것도...

CParam 매개 변수 기본 클래스에는 여러 하위 항목이 있습니다. 결론은 요소의 제어된 매개변수에 대한 일반적인 속성이 있고 특정 속성이 있다는 것입니다. 예를 들어 버튼에는 bool의 관리 매개변수 유형이 있고 드롭다운 목록에는 "메뉴" 유형이 있습니다. 즉, 버튼은 1/0을 토글하고 목록 상자는 제한된 선택을 제공합니다. 예를 들어 슬라이더에는 "범위" 매개변수 유형, 즉 범위가 있습니다. 몇 가지 유형이 더 있으며 모두 고유한 속성이 있습니다.

따라서 매개변수의 기본 클래스에서 상속되는 클래스도 있어야 합니다. "CBool", "CRange", "CMenu"와 같은 것입니다.

잠깐 기다려요. 이제 조금 추상적으로 생각해 봅시다.

Peter, 귀하의 관점에서 버튼, 텍스트 레이블, 입력 필드, 이미지 필드와 같은 컨트롤 사이의 공통점은 무엇입니까?

Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
Документация по MQL5: Константы, перечисления и структуры / Константы объектов / Типы объектов
  • www.mql5.com
При создании графического объекта функцией ObjectCreate() необходимо указать тип создаваемого объекта, который может принимать одно из значений перечисления ENUM_OBJECT. Дальнейшие уточнения свойств созданного объекта возможно с помощью функций по работе с графическими объектами.
 
Алексей Барбашин :

잠깐 기다려요. 이제 조금 추상적으로 생각해 봅시다.

Peter, 귀하의 관점에서 버튼, 텍스트 레이블, 입력 필드, 이미지 필드와 같은 컨트롤 사이의 공통점은 무엇입니까?

1. 좌표, 치수.

2. 좌표 종속성, 차원 종속성.

3. 컨트롤 기능에서 속성의 총 개수에 따라 훨씬 더 많은 것. 커널에 270개의 속성이 있습니다. 공통 다수. 하지만 많은 기능을 지원하는 개발된 기능이 있습니다. 따라서 그러한 많은 속성. 가장 단순한 속성부터 시작해야 합니다.

 
Реter Konow :

1. 좌표.

2. 종속성을 조정합니다.

3. 컨트롤 기능에서 속성의 총 개수에 따라 훨씬 더 많은 것. 커널에 270개의 속성이 있습니다. 공통 다수. 하지만 많은 기능을 지원하는 개발된 기능이 있습니다. 따라서 그러한 많은 속성. 가장 단순한 속성부터 시작해야 합니다.

예, 물론 가장 단순한 속성을 사용합니다. 동일한 텍스트 레이블이 구성할 수 있는 기본 개체는 무엇입니까? 또는 단순한 변형에서 Button이 구성할 수 있는 기본 개체는 무엇입니까?