캔버스 대 레이블 - 페이지 17

 
Mihail Matkovskij :

g 코드를 희생시키면서 내 모든 단어를 주장하면서 당신의 g 코드를 찾을 수 있습니다! 그리고 당신처럼, 근거없이 비난 ... 찾기?

저는 프로그래머가 아닙니다. 독학했어요. 내 코드를 찔러보고 원하는 대로 이름을 지정할 수 있지만, 누가 뭐라고 해도 내 코드는 가장 g...

 
Artyom Trishkin :
그들은 흥미로운 주제를 범람했습니다 ... 글쎄, 어떤 사람들이 갔는지 ...

주제가 흥미로울 수 있습니다. 그러나 슬프게도 그녀는 결코 그렇지 않을 것입니다.

 
Alexey Viktorov :

저는 프로그래머가 아닙니다. 독학했어요. 내 코드를 찔러보고 원하는 대로 이름을 지정할 수 있지만, 누가 뭐라고 해도 내 코드는 가장 g...

그러나 당신을위한 다른 커뮤니티 구성원의 코드는 g ... 글쎄, 그가 독학 한 것이 분명합니다. 따라서 동료에게 진흙 을 던질 수 없다는 불문율이 필요하지 않습니다.

그리고 이제 코드에 대한 질문이 https://www.mql5.com/en/code/24076 입니다. 물론, 나는 당신과 같지 않고 이것이 g..code라고 말하지 않을 것입니다 ... 그러나 나는 어쨌든 내 의견을 말하겠습니다.

 //+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
//---
   calculate();
   ArrayFill (extImg1, 0 , IMG_WIDTH1*IMG_HEIGHT, 0 );
   textComment (dts(lots[ 0 ])+ " " , IMG_WIDTH1, 1 , extImg1);
   textComment (dts(lots[ 1 ])+ " " , IMG_WIDTH1, 2 , extImg1);
   textComment (dts(lots[ 2 ])+ " " , IMG_WIDTH1, 3 , extImg1);
   textComment (dts(lots[ 3 ])+ " " , IMG_WIDTH1, 4 , extImg1);
   textComment (dts(lots[ 4 ])+ " " , IMG_WIDTH1, 5 , extImg1);
   textComment (dts(lots[ 5 ])+ " " , IMG_WIDTH1, 6 , extImg1);
   textComment (dts(lots[ 6 ])+ " " , IMG_WIDTH1, 7 , extImg1);
   textComment (dts(lots[ 7 ])+ " " , IMG_WIDTH1, 8 , extImg1);
   ResourceCreate ( "::bbb" , extImg1, IMG_WIDTH1, IMG_HEIGHT, 0 , 0 , IMG_WIDTH1, clr_format);
   //ChartRedraw();
//--- return value of prev_calculated for next call
   return (rates_total);
}

"모든 틱" 모델에서 테스터에서 작동한다면 BitmapLabel 업데이트 빈도에 제한이 없는 이유는 무엇입니까? 현대 철이 모든 것을 소화하기를 바라십니까? :) 그리고 최적화는 어디에 있습니까? 그리고 내가 많이 로드된 프로세스(테스터의 출력, 모델 의 모든 눈금, 루프의 차트)에서 텍스트를 표시하는 방법을 찾고 있을 때 이것을 제안했습니까?

그리고 내가 나에게 어울리지 않는다고 말했을 때 틱마다 정보를 업데이트하는 내 코드를 보는 대신 ...

https://www.mql5.com/ru/forum/1111/page2979#comment_21212761

이를 위해 특별히 설계된 CCanvas를 사용하지 않으시겠습니까??? 사실, 나는 당신이 추가 기능 등을 호출한다고 어딘가에 썼습니다. 그래서 테스터를 위한 업데이트 빈도를 제한하지 않았지만, 동시에 CCanvas 기능이 어떻게든 당신을 방해했습니다... :)

기이한...


이제 내 코드가 "g-code"라고 생각하는 이유를 말할 차례입니다. 만, 인수 가 있고 빈 대화가 아닙니다!

 
Artyom Trishkin :
그들은 흥미로운 주제를 범람했습니다 ... 글쎄, 어떤 사람들이 갔는지 ...

방금 테스트 참여 제안 을 수락했기 때문에 초대받은 사람에게 몇 가지 질문을 해야 했습니다...

 
Mihail Matkovskij :

...

"모든 틱" 모델에서 테스터에서 작동한다면 BitmapLabel 업데이트 빈도에 제한이 없는 이유는 무엇입니까? 현대 철이 모든 것을 소화하기를 바라십니까? :) 그리고 최적화는 어디에 있습니까? 그리고 내가 많이 로드된 프로세스(테스터의 출력, 모델 의 모든 눈금, 루프의 차트)에서 텍스트를 표시하는 방법을 찾고 있을 때 이것을 제안했습니까?

...

그리고 그 이유는 비트맵 레이블이 일반 레이블보다 더 빨리 작동한다고 스스로 말했기 때문입니다. 그리고 이 경우 하나의 일반 레이블은 속도 측면에서 거의 보이지 않을 것입니다.

 
Dmitry Fedoseev :

방금 테스트 참여 제안 을 수락했기 때문에 초대받은 사람에게 몇 가지 질문을 해야 했습니다...

"도둑과 모자에 불이 붙었다"?...누구든지 소스를 다운받아 위에서 제시한 측정을 반복할 것이다! 같은 불만과 불만이 있습니다. "깨진 링크" 등을 발명했습니다...
드미트리 페도세예프 :

그리고 그 이유는 비트맵 레이블이 일반 레이블보다 더 빨리 작동한다고 스스로 말했기 때문입니다.

나는 그런 말을하지 않았다. 그리고 한 줄이 아닌 정보를 출력하는 것이었습니다. 따라서 측정을 위해 많은 라인을 출력하는 디스플레이를 만들었습니다.

레이블로의 출력은 차트를 최적화합니다. BitmapLabel에 있는 동안 업데이트한 후 픽셀 배열을 전달해야 합니다. 이 경우 픽셀 배열을 채우고 텍스트를 출력합니다. 이러한 모든 작업은 너무 자주 호출되면 애플리케이션에 부하를 줍니다. 레이블의 경우 문자열만 전달하면 됩니다. 이것은 이미 위에서 논의되었습니다.

다양한 모드에서 CCanvas와 레이블의 속도 측정값을 비교하여 속도에 대해 자세히 알아볼 수 있습니다. https://www.mql5.com/ru/forum/364640/page13#comment_21314045

 
Mihail Matkovskij :

그러나 당신을위한 다른 커뮤니티 구성원의 코드는 g ... 글쎄, 그가 독학 한 것이 분명합니다. 따라서 동료에게 진흙 을 던질 수 없다는 불문율이 필요하지 않습니다.

이제 코드에 대한 질문입니다. 물론, 나는 당신과 같지 않고 이것이 g..code라고 말하지 않을 것입니다 ... 그러나 나는 어쨌든 내 의견을 말하겠습니다.

"모든 틱" 모델에서 테스터에서 작동한다면 BitmapLabel 업데이트 빈도에 제한이 없는 이유는 무엇입니까? 현대 철이 모든 것을 소화하기를 바라십니까? :) 그리고 최적화는 어디에 있습니까? 그리고 내가 많이 로드된 프로세스(테스터의 출력, 모델 의 모든 눈금, 루프의 차트)에서 텍스트를 표시하는 방법을 찾고 있을 때 이것을 제안했습니까?

그리고 내가 그것이 나에게 적합하지 않다고 말하자 당신은 나에게 불만을 표현하기 시작했습니다... 추측컨데 나는 아무것도 이해하지 못하고 무자비하게 TextOut - ResourseCreate - ChartRedraw를 호출해야 했습니다. 사실, ChartRedraw는 어떤 이유로 주석 처리되었습니다...


이를 위해 특별히 설계된 CCanvas를 사용하지 않으시겠습니까??? 사실, 불필요한 기능 등을 호출한다고 어딘가에 쓴 것을 보았습니다. 그래서 테스터를 위한 업데이트 빈도를 제한하지 않았지만, 동시에 CCanvas 기능이 어떻게든 당신을 방해했습니다... :)

기이한...


이제 내 코드가 "g-code"라고 생각하는 이유를 말할 차례입니다. 만, 인수 가 있고 빈 대화가 아닙니다!

  1. 당신은 어떤 행성에 살고 있습니까? 이러한 규칙은 어디에서 찾았습니까? 모든 자동차 서비스에 와서 지난번에 누가 당신의 차를 수리했는지에 대한 모든 것을 듣습니다. 지금 말하는 사람이 그 사람이더라도. 그리고 그것은 자동차에만 국한된 것이 아닙니다. 가장 분명한 예일 뿐입니다.
  2. 맹목적으로 복사하지 않기 위해 이 코드를 예시로 제공했습니다.
  3. 모든 검사와 지연은 코드를 복잡하게 만들고 예제로 사용하기 어렵게 만듭니다.
  4. 어드바이저가 트레이딩이 아닌 경우 어떤 종류의 최적화에 대해 이야기할 수 있습니까? 최적화할 매개변수는 무엇입니까?
  5. 내 제안을 거부한 후 Nikolai는 모든 미묘함을 당신에게 설명하기 시작했습니다. 나는 방금 캔버스에 대한 그의 주제를 살펴보라고 조언했습니다. 다 읽었다고 거짓말을 한 것. 거짓말쟁이가 어떻게 대우받기를 원하십니까(간단히 말해서)?

파리와 쇠똥구리가 코드를 파고들게 하십시오. 다른 흥미롭고 유용한 활동이 충분합니다.

 
Mihail Matkovskij :
"도둑과 모자에 불이 붙었다"?...누구든지 소스코드를 다운받아 위에서 제시한 측정을 반복할 것이다! 당신은 같은 주장과 불만을 가지고 있습니다. "깨진 링크" 등을 발명했습니다...

나는 그런 말을하지 않았다. 그리고 한 줄이 아닌 정보를 출력하는 것이었습니다. 따라서 측정을 위해 많은 라인을 출력하는 디스플레이를 만들었습니다.

레이블로의 출력은 차트를 최적화합니다. BitmapLabel에 있는 동안 업데이트한 후 픽셀 배열을 전달해야 합니다. 이 경우 픽셀 배열을 채우고 텍스트를 출력합니다. 이러한 모든 작업은 너무 자주 호출되면 애플리케이션에 부하를 줍니다. 레이블의 경우 문자열만 전달하면 됩니다. 이것은 이미 위에서 논의되었습니다.

다양한 모드에서 CCanvas와 레이블의 속도 측정값을 비교하여 속도에 대해 자세히 알아볼 수 있습니다. https://www.mql5.com/ru/forum/364640/page13#comment_21314045

글쎄, 일반적으로 굽히지 않는 뻔뻔함과 오만함.

 
이 댓글에는 링크가 있는 인용문이 포함되어 있습니다. 이 링크에서 limitFps 필드가 없는 클래스가 있는 파일을 계속 다운로드할 수 있지만 이에 대한 호출이 있습니다. 또한 나 자신이 그러한 링크를 "그렸다"고 말합니다.
 
Alexey Viktorov :
  1. 당신은 어떤 행성에 살고 있습니까? 이러한 규칙은 어디에서 찾았습니까? 모든 자동차 서비스에 와서 지난번에 누가 당신의 차를 수리했는지에 대한 모든 것을 듣습니다. 지금 이야기하고 있는 사람이 그 사람이더라도. 그리고 그것은 자동차에만 국한된 것이 아닙니다. 가장 분명한 예일 뿐입니다.

우리가 그러한 패러다임을 따른다면 분명히 우리는 다른 행성에 있습니다! ...

그는 나에게 자동차 수리점의 예를 들어줍니다 ... :) 글쎄, 적어도 아침에는 분위기가 높아졌습니다. :)

알렉세이 빅토로프 :

이 코드를 예시로 제공했습니다...

그런 다음 다시 한 번 묻습니다. Canvas는 어떻게 다른가요? 비슷한 방식으로 작동합니다. 당신처럼 꼭 필요한 기능만 버리지 않습니다. 절차적 프로그래밍이 아닌 완전히 다른 수준인 OOP라는 점을 제외하고는 다릅니다. :)

알렉세이 빅토로프 :

모든 검사와 지연은 코드를 복잡하게 만들고 예제로 사용하기 어렵게 만듭니다.

물론, 물론... 어수선한... 당신은 코딩을 할 줄도 모릅니다! 이에 대한 변명은 다음과 같을 것입니다. 글쎄요, 저는 프로그래머가 아닙니다... :) 다른 사람들 을 가르치는 일을 스스로 하세요!... :)

알렉세이 빅토로프 :

어드바이저가 트레이딩이 아닌 경우 어떤 종류의 최적화에 대해 이야기할 수 있습니까? 최적화할 매개변수는 무엇입니까?

저도 용어가 헷갈렸습니다 :) BitmapLabel 업데이트 빈도 최적화에 대해 이야기했습니다. 고부하 프로세스에서 사용하기 위한 예제를 제공하지 않았으며 저에게 제공했습니다.

알렉세이 빅토로프 :
  1. 내 제안을 거부한 후 Nikolai는 모든 미묘함을 당신에게 설명하기 시작했습니다. 나는 방금 캔버스에 대한 그의 주제를 살펴보라고 조언했습니다. 다 읽었다고 거짓말을 한 것. 거짓말쟁이가 어떻게 대우받기를 원하십니까(간단히 말해서)?

이 경우 당신은 거짓말 쟁이입니다! 내가 그런 말을 하지 않았기 때문이다. 방금 다른 Canvas 기반 라이브러리가 필요한 이유를 말했습니다. 사실, 다른 Canvas. 당신은 나에게 동일한 Canvas를 제공했고 그것은 정확히 동일하게 작동합니다. Nikolay는 Canvas가 내 작업에서 빠르게 작동하도록 해야 하는 작업을 설명하고 싶지 않았습니다. 그리고 당신은 분명히 관련 지식이 없었습니다. 당신은 Nikolai에게 "그에게 시간을 낭비하지 마십시오"라고 말했습니다. 그는 "동의한다"고 말했다. 이것이 Nikolai에 대한 설명의 전부입니다. 프로그래머...

알렉세이 빅토로프 :

파리와 쇠똥구리가 코드를 파고들게 하십시오. 다른 흥미롭고 유용한 활동이 충분합니다.

나는 당신의 진실을 말하지 않을 것입니다 ... 그러나 나는 한 가지에 동의합니다. 그리고 정말로, 그것은 필요하지 않습니다. 왜 아마추어의 결론이 필요합니까? ... 더 나은 자동차 수리점에 가십시오 ...

모든 것. 그런 자세한 답변은 더 이상 하지 않겠습니다. 시간 낭비이기 때문입니다. 차라리 쓸모 있는 일을 하고 싶어!