이제 mt4 차트의 버튼 및 텍스트 필드 가능 - 페이지 6

 

안녕,

여기에 파일을 제공할 수 있는 사람이 있습니까? 이런 종류의 기능 을 사용할 수 있기를 정말 원합니다. fx1.net을 검색했지만 아무 것도 찾을 수 없습니다. 인터넷 검색을 시도했지만 모든 파일의 다운로드를 찾는 데 운이 없었습니다.

누군가 사본을 제공할 만큼 친절하다면 대단히 감사할 것입니다. 내 이메일은 paul@lukafour3.com입니다.

안부

 
fridaystreet :

안녕,

여기에 파일을 제공할 수 있는 사람이 있습니까? 이런 종류의 기능을 사용할 수 있기를 정말 원합니다. fx1.net을 방문했지만 아무 것도 찾을 수 없습니다. 인터넷 검색을 시도했지만 모든 파일의 다운로드를 찾는 데 운이 없었습니다.

누군가 사본을 제공할 만큼 친절하다면 대단히 감사할 것입니다. 내 이메일은 paul@lukafour3.com입니다.

안부


사실, 나는 당신의 문제를 이해하지 못합니다.

fx1.net을 먼저 방문하여 사본을 얻었고 이 사이트를 방문하게 되었습니다.

https://www.mql5.com/go?link=http://taurus-traders.com/index.php/de/services/forex-download/viewdownload/6-plugins/246-mt4gui-toolbox-addon- 메타 트레이더를 위해

나는 거기에서 dll을 얻었다. "다운로드" 버튼은 텍스트 다음 페이지 하단에 있습니다.

기능을 사용하여 버튼을 만드는 방법이 모두 설명되어 있습니다.

불쾌한 놀라움을 피하기 위해 단점을 기억하고 먼저 데모에서 프로그램을 철저히 테스트하십시오.

이 버튼들을 실계좌 라이브 트레이딩에서 사용하실 예정이라면!!!

또한 이 스레드를 처음부터 끝까지 읽으십시오!

AND: "mt4gui.dll"에 대해 Google에서 검색하셨습니까 ??? 시도하십시오, 이것이 얼마나 쉬운지 놀라게 될 것입니다!!!

 

안녕,

MT4GUI를 기반으로 간단한 EA를 작성했지만 불행히도 MT4가 시간 프레임을 변경하려고 할 때 충돌합니다(예: M1에서 M5로). 다른 사람이 이것을 경험했거나 해결 방법을 알고 있습니까?

여러 방법을 시도했지만 지금까지 해결책을 찾지 못했습니다. 버튼이 있는 가장 단순한 EA도 시간 프레임을 변경할 때 충돌합니다. 빌드 432 및 438에서 문제가 발생했습니다.

감사해요

 
darksamu :

안녕,

MT4GUI를 기반으로 간단한 EA를 작성했지만 불행히도 MT4가 시간 프레임을 변경하려고 할 때 충돌합니다(예: M1에서 M5로). 다른 사람이 이것을 경험했거나 해결 방법을 알고 있습니까?

여러 방법을 시도했지만 지금까지 해결책을 찾지 못했습니다. 버튼이 있는 가장 단순한 EA도 시간 프레임을 변경할 때 충돌합니다. 빌드 432 및 438에서 문제가 발생했습니다.

감사해요

네, 그렇습니다. 나는 이것에 대해 더 일찍 썼습니다.

당신이 그것에 대해 할 수있는 일은 없습니다. dll 문제입니다.

각각 다른 TF를 가진 많은 차트를 열어 문제를 해결하십시오.

또는 다음과 같이 하기도 합니다.

dll의 충돌 MT4 때 웃는 얼굴을 클릭하여 externs를 수정하려는 경우 또 다른 상황이 있습니다.

그래서 EA를 제거하고 다시 열어 EA 시작 창을 표시하는 기본값 버튼을 만들었습니다.

 

안녕하세요 다다스입니다.

코드 일부를 삽입할 수 있습니까? "로트 크기 선택"에 대한 생성 메뉴를 모르겠습니다. 고맙습니다.

 
endy5 :

안녕하세요 다다스입니다.

코드 일부를 삽입할 수 있습니까? "로트 크기 선택"에 대한 생성 메뉴를 모르겠습니다. 고맙습니다.


 int     hwnd = WindowHandle ( Symbol (), Period ());

string MinimumLot = DoubleToStr ( MarketInfo ( Symbol (),MODE_MINLOT), 2 );

int SelectLotSizeBox = tbPutObject(hwnd, "list" ,- 130 , 213 , 60 , 9 , "" );
    tbAddListItem(hwnd,SelectLotSizeBox,MinimumLot);
     if (MinimumLot== "0.01" ){
    tbAddListItem(hwnd,SelectLotSizeBox , "0.02" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.03" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.04" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.05" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.06" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.07" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.08" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.09" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.10" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.20" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.30" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.40" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.60" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.70" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.80" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.90" );
    tbAddListItem(hwnd,SelectLotSizeBox , "1.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "2.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "3.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "4.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "5.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "6.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "7.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "8.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "9.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "10.00" );}
     if (MinimumLot== "0.10" ){  
    tbAddListItem(hwnd,SelectLotSizeBox , "0.20" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.30" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.40" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.60" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.70" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.80" );
    tbAddListItem(hwnd,SelectLotSizeBox , "0.90" );
    tbAddListItem(hwnd,SelectLotSizeBox , "1.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "2.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "3.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "4.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "5.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "6.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "7.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "8.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "9.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "10.00" );}
     if (MinimumLot== "1.00" ){    
    tbAddListItem(hwnd,SelectLotSizeBox , "2.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "3.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "4.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "5.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "6.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "7.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "8.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "9.00" );
    tbAddListItem(hwnd,SelectLotSizeBox , "10.00" );    
    }
    tbSetListSel(hwnd,SelectLotSizeBox , 0 );
이것이 내가 하는 방법입니다.
 
안녕하세요.
내 영어에 대해 미안 해요 나는 프랑스어입니다.
목록이 어떻게 되는지 잘 이해가 되지 않습니다.
어떻게 그 가치를 회복하는지 말씀해 주시겠습니까?

샘플 .

    tbAddListItem(hwnd,SelectLotSizeBox , "2.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "3.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "4.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "5.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "6.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "7.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "8.50" );
    tbAddListItem(hwnd,SelectLotSizeBox , "9.50" ); 

tbAddListItem(hwnd,SelectLotSizeBox, "10.00" );

다정하게
 

안녕하세요 다다스입니다.

과거 코드를 삽입해 주셔서 대단히 감사합니다!!! 내 코드가 있습니다 :-)

하지만 한 가지 질문이 있습니다. 선택 메뉴(객체 SelectLotSizeBox)에서 값(로트 크기)을 얻는 방법입니다.

함수를 찾았습니다: string tbGetListSel(int hwnd, int object);

코드: 문자열 크기=tbGetListSel(hwnd, SelectLotSizeBox);

선택 lotsize 0.01 값 0에 대한 반환,

선택 lotsize 0.02 값 1 등. 이것은 선택 항목의 일련 번호입니다. lotsize(0.01, 0.02 등) 값을 직접 얻을 수 있습니까?

도와주셔서 감사합니다.

 
phenix77 :
안녕하세요.
내 영어에 대해 미안 해요 나는 프랑스어입니다.
목록이 어떻게 되는지 잘 이해가 되지 않습니다.
어떻게 그 가치를 회복하는지 말씀해 주시겠습니까?

샘플 .

tbAddListItem(hwnd,SelectLotSizeBox, "10.00" );

당신은 이것에 대해 잘 알고 있습니까?

   string tbVersion();         
   int tbPutObject( int , string , int , int , int , int , string ); // hwnd,type,x,y,w,h,label     
   int tbSetBgColor( int , int , int ); // hwnd,object,bgcolor  
   int tbSetTextColor( int , int , int ); // hwnd,object,color  
   int tbRemove( int , int );
   int tbRemoveAll( int ); // hwnd 
   int tbEnable( int , int , int ); // hwnd, object, 0|1   
   bool tbIsClicked( int , int ); // hwnd,object  
   int tbSetText( int , int , string , int , string ); // hwnd,object,text,fontsize,fontname     
   string tbGetText( int , int ); // hwnd,object 
   int tbAddListItem( int , int , string ); // hwnd,object,item  
   int tbGetListSel( int , int ); // hwnd,object  
   int tbSetListSel( int , int , int ); // hwnd,object,index 
이것은 당신에게 가치를 줄 것입니다 :
Lot=StrToDouble(tbGetText(hwnd,SelectLotSizeBox));

선택 상자의 텍스트는 텍스트이므로 문자열 - 맞습니까?

그리고 이 문자열을 두 배로 만들어야 합니다. 맞나요?

 
endy5 :

안녕하세요 다다스입니다.

함수를 찾았습니다: string tbGetListSel(int hwnd, int object);

코드: 문자열 크기=tbGetListSel(hwnd, SelectLotSizeBox);

선택 lotsize 0.01 값 0에 대한 반환,

선택 lotsize 0.02 값 1 등. 이것은 선택 항목의 일련 번호입니다. lotsize(0.01, 0.02 등) 값을 직접 얻을 수 있습니까?

도와주셔서 감사합니다.

 // It is:
string tbGetText( int , int ); // hwnd,object 
// This one is int (integer):
int tbGetListSel( int , int ); // hwnd,object  
 // You are looking for:
double size = StrToDouble(tbGetText(hwnd,SelectLotSizeBox));