고정 폭 글꼴로 차트 출력을 표시하는 방법은 무엇입니까? - 페이지 3 1234567 새 코멘트 Alexey Volchanskiy 2017.12.03 14:35 #21 Victor Ziborov : 매개변수를 테스트하고 최적화하는 단계에서는 Comment 출력과 Label 출력을 비활성화할 수 있지만, 실생활에서 Expert Advisor를 사용할 때는 Comment 출력과 Label 출력을 다시 활성화해야 합니다. 감사합니다 캡 )))))) 우리는 몰랐습니다 Ihor Herasko 2017.12.03 15:01 #22 Victor Ziborov : 매개변수를 테스트하고 최적화하는 단계에서는 Comment 출력과 Label 출력을 비활성화할 수 있지만, 실생활에서 Expert Advisor를 사용할 때는 Comment 출력과 Label 출력을 다시 활성화해야 합니다. 글쎄, 이것은 일반적으로 자동으로 수행됩니다. bool bIsComment = (! IsTesting () || IsVisualMode ()); 코드를 따라 더 나아가 Comment를 표시하거나 그래픽 구성 을 수행해야 하는 경우 bIsComment를 확인합니다. 따라서 수동으로 전환할 필요가 없습니다. Yury Kirillov 2017.12.03 16:55 #23 Ihor Herasko : 글쎄, 이것은 일반적으로 자동으로 수행됩니다. 코드를 따라 더 나아가 Comment를 표시하거나 그래픽 구성 을 수행해야 하는 경우 bIsComment를 확인합니다. 따라서 수동으로 전환할 필요가 없습니다. 그리고 어디에서 수동으로 해야 한다고 했습니까? 내가 뭐 놓친 거 없니? Ihor Herasko 2017.12.03 17:40 #24 Yury Kirillov : 그리고 어디에서 수동으로 해야 한다고 했습니까? 내가 뭐 놓친 거 없니? 이 게시물에 답글을 남겼습니다. 원칙적으로 모호합니다. 그러나 어떻게 보면 "disable"에 더 가깝고 "enable"은 프로그램이 실행되는 방식에 따라 사용자가 변경하는 설정 매개변수입니다. 그러한 매개변수가 필요하지 않다는 것을 명확히 했습니다. Yury Kirillov 2017.12.03 18:13 #25 Artem Virskiy : 각 문자의 너비를 픽셀 단위로 측정할 수 있습니다(폭이 동일한 여러 그룹이 있음). 지정된 너비에 도달할 때까지 모든 문자열을 공백으로 채우는 함수를 작성하십시오. 그런 다음 이 하위 문자열에서 주석을 수집합니다. 그러한 기능을 만들어 코드베이스에 넣으면 많은 사람들이 감사할 것입니다. 나도. 그리고 귀찮게 하기에는 너무 게으르다. 이 경우 문자 \x200A가 유용할 것입니다. 정확한 맞춤을 위해 최소 너비의 공백입니다. 그리고 일반적인 공백을 기호 /1 - 넓은 공백으로 바꿉니다(결국 주석의 길이가 제한됨). 다른 사람들에게는 유용한 공간이 있을 수 있습니다. 그러나 나는 그들을 모른다. 아이디어 주셔서 감사합니다! Nikolai Semko 2017.12.03 20:48 #26 Yury Kirillov : 주석은 그래픽 글꼴보다 훨씬 빠릅니다. 논리적이지만 그렇지 않습니다. 그리고 확인하기도 쉽습니다. 다음은 MQL5의 스크립트입니다(MT4에서는 시도하지 않았습니다). #property script_show_inputs #include <Canvas\Canvas.mqh> input uint FontSize= 12 ; // размер шрифта input ENUM_COLOR_FORMAT format= COLOR_FORMAT_ARGB_NORMALIZE ; //Способ обработки цвета void OnStart () { CCanvas Text; ulong ColorScreen= ChartGetInteger ( 0 , CHART_COLOR_BACKGROUND , 0 ); Text.FontSet( "Arial" ,FontSize); string str= "Соотношение времени выполнения Canvas/Comment = 0.00000" ; int H=Text.TextHeight(str); int W=Text.TextWidth(str); if (!Text.CreateBitmapLabel( 0 , 0 , "FONT" , 2 , 130 ,W,H,format)) Print ( "Error creating canvas: " , GetLastError ()); ulong t1= 1 ,t2= 1 ,t0; int i= 0 ; color clr=( color )ARGB( 255 , 255 ^GETRGBR(ColorScreen), 255 ^GETRGBG(ColorScreen), 255 ^GETRGBB(ColorScreen)); while (! IsStopped ()) { t0= GetMicrosecondCount (); Text.Erase(( color )ColorScreen); Text. TextOut ( 0 , 0 ,str,clr); Text.Update(); t1+= GetMicrosecondCount ()-t0; t0= GetMicrosecondCount (); Comment (str); t2+= GetMicrosecondCount ()-t0; str= "Соотношение времени выполнения Canvas/Comment = " + DoubleToString (( double )t1/( double )t2, 5 ); if (i== 1000 ) { Print ( "Canvas - " ,t1, " Comment - " ,t2); i= 0 ; t1= 1 ; t2= 1 ; } else i++; } Text.Destroy(); Comment ( "" ); } 테스트 결과 그래픽 출력이 약 10% 더 빨라졌습니다. 동시에 그래픽 출력 방식은 주석과 달리 글꼴을 매끄럽게 합니다. 그러나 가장 흥미로운 점은 글꼴 크기 를 12가 아닌 30으로 설정하더라도 속도가 여전히 더 높다는 것입니다. 개인적으로 이것은 미스터리입니다. 파일: TestSpeedText.mq5 4 kb Nikolai Semko 2017.12.03 21:51 #27 Alexey Volchanskiy : 그래서 60k/sec 만화는 안하고 꺼내서 ok 만화가있는 캔버스도 대처할 것입니다. 파일: TestSpeedCanv.ex5 68 kb TestSpeedCanv.mq5 8 kb Nikolai Semko 2017.12.03 23:22 #28 Nikolai Semko : 다음은 MQL5의 스크립트입니다(MT4에서는 시도하지 않았습니다). MT4에 도전했습니다. 코드도 작동합니다. MT4에서 Comment 는 그래픽보다 약 5배 빠른 것으로 나타났습니다. 또한 MT5 Comment()는 MT4보다 5~6배 느리게 작동합니다. 그러나 이것은 이미 불쾌한 놀라움과 이상함입니다. 그런 다음 개발자에게 질문합니다. 어때요? 결국 이것은 5명의 명백한 버그입니다! Alexey Volchanskiy 2017.12.04 02:44 #29 Nikolai Semko : 논리적이지만 그렇지 않습니다. 그리고 확인하기도 쉽습니다. 다음은 MQL5의 스크립트입니다(MT4에서는 시도하지 않았습니다). 테스트 결과 그래픽 출력이 약 10% 더 빨라졌습니다. 동시에 그래픽 출력 방식은 주석과 달리 글꼴을 매끄럽게 합니다. 그러나 가장 흥미로운 점은 글꼴 크기 를 12가 아닌 30으로 설정하더라도 속도가 여전히 더 높다는 것입니다. 개인적으로 이것은 미스터리입니다. 이러한 측정은 아무것도 아닙니다. 댓글과 캔버스에 대해 별도로 몇 만 번의 패스 주기를 별도로 수행해야 판단할 수 있습니다. 예를 들어 출력 텍스트가 변경되도록 카운터 값이 표시되도록 합니다. 이런 식으로 리메이크 할 수 있습니까? Nikolai Semko 2017.12.04 02:47 #30 Alexey Volchanskiy : 이러한 측정은 아무것도 아닙니다. 댓글과 캔버스에 대해 별도로 몇 만 번의 패스 주기를 별도로 수행해야 판단할 수 있습니다. 예를 들어 출력 텍스트가 변경되도록 카운터 값이 표시되도록 합니다. 이런 식으로 리메이크 할 수 있습니까? 싸이클도 따로 했는데 결과가 뭔가 이상하다는 생각도 들었다. 모두 같은. 같은 결과입니다. 일반적인 주기나 따로따로 차이가 없습니다. 내 예에서는 텍스트가 매번 바뀌는데 왜 이것을 눈치채지 못했는지 이상합니다. 컴파일러 최적화에 대해서도 알고 있습니다. )) 1234567 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
매개변수를 테스트하고 최적화하는 단계에서는 Comment 출력과 Label 출력을 비활성화할 수 있지만, 실생활에서 Expert Advisor를 사용할 때는 Comment 출력과 Label 출력을 다시 활성화해야 합니다.
감사합니다 캡 )))))) 우리는 몰랐습니다
매개변수를 테스트하고 최적화하는 단계에서는 Comment 출력과 Label 출력을 비활성화할 수 있지만, 실생활에서 Expert Advisor를 사용할 때는 Comment 출력과 Label 출력을 다시 활성화해야 합니다.
글쎄, 이것은 일반적으로 자동으로 수행됩니다.
코드를 따라 더 나아가 Comment를 표시하거나 그래픽 구성 을 수행해야 하는 경우 bIsComment를 확인합니다. 따라서 수동으로 전환할 필요가 없습니다.
글쎄, 이것은 일반적으로 자동으로 수행됩니다.
코드를 따라 더 나아가 Comment를 표시하거나 그래픽 구성 을 수행해야 하는 경우 bIsComment를 확인합니다. 따라서 수동으로 전환할 필요가 없습니다.
그리고 어디에서 수동으로 해야 한다고 했습니까? 내가 뭐 놓친 거 없니?
그리고 어디에서 수동으로 해야 한다고 했습니까? 내가 뭐 놓친 거 없니?
이 게시물에 답글을 남겼습니다. 원칙적으로 모호합니다. 그러나 어떻게 보면 "disable"에 더 가깝고 "enable"은 프로그램이 실행되는 방식에 따라 사용자가 변경하는 설정 매개변수입니다. 그러한 매개변수가 필요하지 않다는 것을 명확히 했습니다.
각 문자의 너비를 픽셀 단위로 측정할 수 있습니다(폭이 동일한 여러 그룹이 있음). 지정된 너비에 도달할 때까지 모든 문자열을 공백으로 채우는 함수를 작성하십시오. 그런 다음 이 하위 문자열에서 주석을 수집합니다.
그러한 기능을 만들어 코드베이스에 넣으면 많은 사람들이 감사할 것입니다. 나도. 그리고 귀찮게 하기에는 너무 게으르다.
이 경우 문자 \x200A가 유용할 것입니다. 정확한 맞춤을 위해 최소 너비의 공백입니다. 그리고 일반적인 공백을 기호 /1 - 넓은 공백으로 바꿉니다(결국 주석의 길이가 제한됨). 다른 사람들에게는 유용한 공간이 있을 수 있습니다. 그러나 나는 그들을 모른다.
아이디어 주셔서 감사합니다!
주석은 그래픽 글꼴보다 훨씬 빠릅니다.
논리적이지만 그렇지 않습니다.
그리고 확인하기도 쉽습니다.
다음은 MQL5의 스크립트입니다(MT4에서는 시도하지 않았습니다).
테스트 결과 그래픽 출력이 약 10% 더 빨라졌습니다. 동시에 그래픽 출력 방식은 주석과 달리 글꼴을 매끄럽게 합니다. 그러나 가장 흥미로운 점은 글꼴 크기 를 12가 아닌 30으로 설정하더라도 속도가 여전히 더 높다는 것입니다. 개인적으로 이것은 미스터리입니다.
그래서 60k/sec 만화는 안하고 꺼내서 ok
만화가있는 캔버스도 대처할 것입니다.
다음은 MQL5의 스크립트입니다(MT4에서는 시도하지 않았습니다).
MT4에 도전했습니다. 코드도 작동합니다.
MT4에서 Comment 는 그래픽보다 약 5배 빠른 것으로 나타났습니다. 또한 MT5 Comment()는 MT4보다 5~6배 느리게 작동합니다. 그러나 이것은 이미 불쾌한 놀라움과 이상함입니다. 그런 다음 개발자에게 질문합니다. 어때요? 결국 이것은 5명의 명백한 버그입니다!
논리적이지만 그렇지 않습니다.
그리고 확인하기도 쉽습니다.
다음은 MQL5의 스크립트입니다(MT4에서는 시도하지 않았습니다).
테스트 결과 그래픽 출력이 약 10% 더 빨라졌습니다. 동시에 그래픽 출력 방식은 주석과 달리 글꼴을 매끄럽게 합니다. 그러나 가장 흥미로운 점은 글꼴 크기 를 12가 아닌 30으로 설정하더라도 속도가 여전히 더 높다는 것입니다. 개인적으로 이것은 미스터리입니다.
이러한 측정은 아무것도 아닙니다. 댓글과 캔버스에 대해 별도로 몇 만 번의 패스 주기를 별도로 수행해야 판단할 수 있습니다. 예를 들어 출력 텍스트가 변경되도록 카운터 값이 표시되도록 합니다.
이런 식으로 리메이크 할 수 있습니까?
이러한 측정은 아무것도 아닙니다. 댓글과 캔버스에 대해 별도로 몇 만 번의 패스 주기를 별도로 수행해야 판단할 수 있습니다. 예를 들어 출력 텍스트가 변경되도록 카운터 값이 표시되도록 합니다.
이런 식으로 리메이크 할 수 있습니까?
싸이클도 따로 했는데 결과가 뭔가 이상하다는 생각도 들었다. 모두 같은. 같은 결과입니다. 일반적인 주기나 따로따로 차이가 없습니다. 내 예에서는 텍스트가 매번 바뀌는데 왜 이것을 눈치채지 못했는지 이상합니다. 컴파일러 최적화에 대해서도 알고 있습니다. ))