개발자를 도와주세요. - 페이지 3 12345678910...19 새 코멘트 Sofiia Butenko 2017.11.17 17:45 #21 Sergey Chalyshev : 늦은 견적 문제를 해결하는 데 도움이 됩니다. 나는 누가 지연하고 있는지 이해하지 못합니다. 여기 좋은 예가 있습니다. 지표는 따옴표의 도착을 늦출 수 있습니다(계산될 때까지 - 따옴표는 오지 않음). Реter Konow 2017.11.17 17:49 #22 Vladimir Pastushak : 또한 버튼이면 속성이 정확히 버튼이 되고 사각형이면 속성이 정확히 사각형이 됩니다. 다음은 문제를 해결하기 위한 접근 방식의 예가 될 수 있는 그래픽 엔진의 일부입니다. if (!Объект_в_нажатом_состоянии && Идентификатор_события == _STANDART_EVENT_OBJECT_POINTED) { if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_MAIN_CATEGORY] == _OBJECT_MAIN_CATEGORY_STANDART) { if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_CATEGORY] == _OBJECT_CATEGORY_WINDOW_APPEARENCE_BUTTON) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , 255 ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , clrWhite ); } if (G_CORE[Номер_окна_под_событием][_W_Properties][_WINDOW_CURRENT_STATUS] == _WINDOW_CURRENT_STATUS_AWAKE) { if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_CATEGORY] == _OBJECT_CATEGORY_SCROLL_BAR_BUTTON) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , clrSilver ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , clrSilver ); } if ( G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_CATEGORY] == _OBJECT_CATEGORY_MENU_ITEM //&& !(G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_SUBCATEGORY] == _OBJECT_SUBCATEGORY_INTERFACE_MAIN_MENU_ITEM && Открыто_окно_меню) ) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , clrLightSkyBlue ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BORDER_COLOR , clrBlue ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , clrWhite ); //---------------- if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_SUBCATEGORY] == _OBJECT_SUBCATEGORY_INTERFACE_MAIN_MENU_ITEM && Открыто_окно_меню) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BORDER_COLOR , 0 ); } //---------------- } if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_CATEGORY] == _OBJECT_CATEGORY_TOOL_BOX_ITEM) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , clrSilver ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , clrSilver ); } if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_CATEGORY] == _OBJECT_CATEGORY_TEXT_EDIT_BOX) { if (G_CORE[Номер_окна_под_событием][_W_Properties][_WINDOW_CATEGORY] == _WINDOW_CATEGORY_MENU) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , C'226,226,226' ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BORDER_COLOR , clrLightSkyBlue ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , 0 ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_FONTSIZE ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_FONTSIZE] + 1 ); } else { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , C'226,226,226' ); //clrLightSkyBlue ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BORDER_COLOR , clrLightSkyBlue ); //clrBlue ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , 0 ); //clrWhite // ObjectSetInteger(0,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME],OBJPROP_FONTSIZE,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_FONTSIZE] + 1); } } if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_CATEGORY] == _OBJECT_CATEGORY_SET_VALUE_BUTTON) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , clrLightSkyBlue ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , clrBlue ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , clrWhite ); } if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_CATEGORY] == _OBJECT_CATEGORY_WINDOW_HANDLE) { if (G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_SUBCATEGORY] == _OBJECT_SUBCATEGORY_VERTICAL_SCROLL_BAR_HANDLE) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , 8421504 ); ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_COLOR , 8421504 ); } if ( G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_SUBCATEGORY] == _OBJECT_SUBCATEGORY_WINDOW_RIGHT_HANDLE || G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_SUBCATEGORY] == _OBJECT_SUBCATEGORY_WINDOW_BOTTOM_HANDLE || G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_OBJECT_SUBCATEGORY] == _OBJECT_SUBCATEGORY_WINDOW_HW_HANDLE ) { ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , clrDarkGray ); } } 엔트리에 주의 G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME] 필수 창, 필수 개체 및 필수 속성이 배열에 대체됩니다. 다음으로 새 값은 함수에 의해 즉시 설정됩니다. ObjectSetInteger ( 0 ,G_CORE[Номер_окна_под_событием][Номер_объекта_под_событием][_NAME], OBJPROP_BGCOLOR , Свойство ); 이것이 내가 말하는 "엔진"입니다. Renat Akhtyamov 2017.11.17 17:52 #23 간단한 질문이 있습니다. 성배 를 만드는 방법, 필요한 것: 코드 조각 등, 어떤 전략을 채택할 것인가? Реter Konow 2017.11.17 17:54 #24 Renat Akhtyamov : 간단한 질문이 있습니다. 성배를 만드는 방법, 필요한 것: 코드 조각 등? 내 의견 - 성배 는 할 필요가 없습니다. 시장에서 트레이더로 일하면서 이 단어를 잊어야 합니다. )) Renat Akhtyamov 2017.11.17 17:54 #25 Реter Konow : 내 의견 - 성배는 할 필요가 없습니다. 시장에서 트레이더로 일하면서 이 단어를 잊어야 합니다. )) 그리고 주변 사람들이 다 누설하고 있는데, 수익성 있는 전략을 배우고 어드바이저를 개발할 사람이 아무도 없다면 어떻게 해야 할까요? Реter Konow 2017.11.17 17:56 #26 Renat Akhtyamov : 주변의 모든 것이 배수되면 어떻게 작동합니까? 따라서 다른 사람들처럼 일하지 않아야합니다.)) Renat Akhtyamov 2017.11.17 17:58 #27 Реter Konow : 따라서 다른 사람들처럼 일하지 않아야합니다.)) 여기에서는 누구에게도 묻지 않을 것입니다. 모두가 일합니다. 다른 사람들처럼 - chtoli를 작동하지 않습니까? Реter Konow 2017.11.17 18:01 #28 Renat Akhtyamov : 여기에서는 누구에게도 묻지 않을 것입니다. 모두가 일합니다. 다른 사람들처럼 - chtoli를 작동하지 않습니까? 개인적으로 저는 중장기 주식 전략을 좋아합니다. 나는 외환을 좋아하지 않습니다. 전략은 시장과 참가자에 대한 지식을 기반으로 해야 하며 데이터를 올바르게 해석해야 합니다. 이것이 없으면 모든 전략은 "추측 게임"입니다. Renat Akhtyamov 2017.11.17 18:03 #29 Реter Konow : 개인적으로 저는 중장기 주식 전략을 좋아합니다. 나는 외환을 좋아하지 않습니다. 전략은 시장과 참가자에 대한 지식을 기반으로 해야 하며 데이터를 올바르게 해석해야 합니다. 이것이 없으면 모든 전략은 "추측 게임"입니다. 그래, 너가 맞아. 고맙습니다! Vladimir Pastushak 2017.11.17 18:05 #30 Реter Konow : 따라서 다른 사람들처럼 일하지 않아야합니다.)) 이것이 내가 일하는 방식입니다. CButton 을 사용하면 이름이 있거나 없는 다른 버튼을 만들고 버튼의 속성만 변경할 수 있습니다. //|==================================================================| //| CButton.mqh | //| Copyright 2016, Trading-go Project. | //| Author: Voldemar, Version: 13.04.2016, Site http://trading-go.ru | //|------------------------------------------------------------------| //| Класс для работы с простой кнопкой | //|==================================================================| #property strict #include "CObject.mqh" //|==================================================================| //| CREATE("Opens",7000,7000,60,20,CORNER_LEFT_UPPER,"","Sans Serif",7,clrWhite,C'71,71,71',C'200,200,200',false,false,false,true,0,"\n"); //|==================================================================| class CButton { protected : CObject obj; public : bool SetXDISTANCE( int aX) { return obj.SetXDistance(aX);} //--- установим координаты кнопки bool SetXDISTANCE( string aName, int aX) { return obj.SetXDistance(aName,aX);} //--- установим координаты кнопки int GetXDISTANCE( void ) { return ( int )obj.GetXDistance();} //--- установим координаты кнопки int GetXDISTANCE( string aName) { return ( int )obj.GetXDistance(aName);} //--- установим координаты кнопки void SetSUB_WINDOW( int aWindow) { obj.SetSubWindow(aWindow);} //--- установим координаты кнопки int GetSUB_WINDOW( void ) { return obj.GetSubWindow();} //--- установим координаты кнопки //--- bool SetNEW_NAME( string aName, string aNewName) { return obj.SetNewName(aName,aNewName);} //--- void SetNAME( string aName) { obj.SetName(aName);} //--- string GetNAME( void ) { return obj.GetName();} //--- //--- void SetHIDE( string aName) { obj.SetHide(aName);} //--- void SetHIDE( void ) { obj.SetHide();} //--- //--- bool SetKILL( void ) { return obj.SetDellName();} //--- bool SetKILL( string aName) { return obj.SetDellName(aName);} //--- //--- bool GetOBJECT_FIND( void ) { return obj.GetObject_Find();} //--- bool GetOBJECT_FIND( string aName) { return obj.GetObject_Find(aName);} //--- // ================ bool SetXYToTimePrice( string aName, int aX, int aY, int &aSubWindow, datetime &aTime, double &aPrice) { return obj.SetXYToTimePrice(aName,aX,aY,aSubWindow,aTime,aPrice); } bool SetXYToTimePrice( int aX, int aY, int &aSubWindow, datetime &aTime, double &aPrice) { return obj.SetXYToTimePrice(aX,aY,aSubWindow,aTime,aPrice); } // ================ bool SetTimePriceToXY( string aName, datetime aTime, double aPrice, int aXSIZE= 0 , int aYSIZE= 0 ) { return obj.SetTimePriceToXY(aName,aTime,aPrice,aXSIZE,aYSIZE); } bool SetTimePriceToXY( datetime aTime, double aPrice, int aXSIZE= 0 , int aYSIZE= 0 ) { return obj.SetTimePriceToXY(aTime,aPrice,aXSIZE,aYSIZE); } void Debug( bool aDebug= false ) { obj.Debug(aDebug);} //--- Режим дебага // ================ //CREATE("Opens",7000,7000,60,20,CORNER_LEFT_UPPER,"","Sans Serif",7,clrWhite,C'71,71,71',C'200,200,200',false,false,false,true,0,"\n"); // ================ bool CREATE( const string aName = "Button" , // имя кнопки const int aX = 20 , // координата по оси X const int aY = 20 , // координата по оси Y const int aWidth = 50 , // ширина кнопки const int aHeight = 18 , // высота кнопки const ENUM_BASE_CORNER aCorner = CORNER_LEFT_UPPER , // угол графика для привязки const string aText = "Button" , // текст const string aFont = "Arial" , // шрифт const int aFont_size = 10 , // размер шрифта const color aClr = clrWhite , // цвет текста const color aBack_clr = C'71,71,71' , // цвет фона const color aBorder_clr = C'200,200,200' , // цвет границы const bool aState = false , // нажата/отжата const bool aBack = false , // на заднем плане const bool aSelection = false , // выделить для перемещений const bool aHidden = true , // скрыт в списке объектов const int aZ_order = 0 , // приоритет на нажатие мышью const string aTooltip = "\n" // комментарий ) { if (obj.CreateObject(aName, OBJ_BUTTON )) //--- создадим кнопку { SetXDISTANCE(aX); //--- установим координаты кнопки SetYDISTANCE(aY); //--- установим координаты кнопки SetXSIZE(aWidth); //--- установим размер кнопки SetYSIZE(aHeight); //--- установим размер кнопки SetCORNER(aCorner); //--- установим угол графика, относительно которого будут определяться координаты точки SetTEXT(aText); //--- установим текст SetFONT(aFont); //--- установим шрифт текста SetFONTSIZE(aFont_size); //--- установим размер шрифта SetCOLOR(aClr); //--- установим цвет текста SetBGCOLOR(aBack_clr); //--- установим цвет фона SetBORDER_COLOR(aBorder_clr); //--- установим цвет границы SetBACK(aBack); //--- отобразим на переднем (false) или заднем (true) плане SetSTATE(aState); //--- переведем кнопку в заданное состояние SetSELECTABLE(aSelection); //--- включим (true) или отключим (false) режим перемещения кнопки мышью SetSELECTED(aSelection); //--- включим (true) или отключим (false) режим перемещения кнопки мышью SetHIDDEN(aHidden); //--- скроем (true) или отобразим (false) имя графического объекта в списке объектов SetZORDER(aZ_order); //--- установим приоритет на получение события нажатия мыши на графике SetTOOLTIP(aTooltip); //--- комментарий } else return false ; return true ; } }; //|==================================================================| //| | //|==================================================================| 12345678910...19 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
늦은 견적 문제를 해결하는 데 도움이 됩니다. 나는 누가 지연하고 있는지 이해하지 못합니다. 여기 좋은 예가 있습니다.
지표는 따옴표의 도착을 늦출 수 있습니다(계산될 때까지 - 따옴표는 오지 않음).
또한 버튼이면 속성이 정확히 버튼이 되고 사각형이면 속성이 정확히 사각형이 됩니다.
다음은 문제를 해결하기 위한 접근 방식의 예가 될 수 있는 그래픽 엔진의 일부입니다.
엔트리에 주의
필수 창, 필수 개체 및 필수 속성이 배열에 대체됩니다. 다음으로 새 값은 함수에 의해 즉시 설정됩니다.
이것이 내가 말하는 "엔진"입니다.간단한 질문이 있습니다.
성배 를 만드는 방법, 필요한 것: 코드 조각 등, 어떤 전략을 채택할 것인가?
간단한 질문이 있습니다.
성배를 만드는 방법, 필요한 것: 코드 조각 등?
내 의견 - 성배는 할 필요가 없습니다. 시장에서 트레이더로 일하면서 이 단어를 잊어야 합니다. ))
주변의 모든 것이 배수되면 어떻게 작동합니까?
따라서 다른 사람들처럼 일하지 않아야합니다.))
여기에서는 누구에게도 묻지 않을 것입니다. 모두가 일합니다. 다른 사람들처럼 - chtoli를 작동하지 않습니까?
개인적으로 저는 중장기 주식 전략을 좋아합니다. 나는 외환을 좋아하지 않습니다. 전략은 시장과 참가자에 대한 지식을 기반으로 해야 하며 데이터를 올바르게 해석해야 합니다. 이것이 없으면 모든 전략은 "추측 게임"입니다.
따라서 다른 사람들처럼 일하지 않아야합니다.))