Hatalar, hatalar, sorular - sayfa 2427

 
Slava :
Çıkış kodunu göster


 // Создадим поле ввода лота
   EditCreate( 0 ,prefix+ "LotBuy" ,xd,yd+ 15 , 47 , 15 , 0 ,( string )Lots, "Lot Buy" , "Verdana" , 8 , clrBlack , C'241,239,226' , clrGray , false , ALIGN_CENTER );

   EditCreate( 0 ,prefix+ "LotSell" ,xd,yd+ 15 , 47 , 15 , 0 ,( string )Lots, "Lot Sell" , "Verdana" , 8 , clrBlack , C'241,239,226' , clrGray , false , ALIGN_CENTER );

void EditCreate( long chart_ID, string nm= "Edit" , int xd= 0 , int yd= 0 , int width= 50 , int height= 18 , int cr= 0 ,
                 string text= "Edit" , string tooltip= "Edit" , string font= "Arial" , int font_size= 9 ,
                 color clr= clrBlack , color back_clr= C'236,233,216' , color border_clr= clrNONE ,
                                                               bool read_only= false , int align= 0 ) {
 if ( ObjectFind (chart_ID,nm)< 0 ) {
     ObjectCreate (chart_ID,nm, OBJ_EDIT , 0 , 0 , 0 );
     ObjectSetInteger (chart_ID,nm, OBJPROP_XDISTANCE ,xd);
     ObjectSetInteger (chart_ID,nm, OBJPROP_YDISTANCE ,yd);
     ObjectSetInteger (chart_ID,nm, OBJPROP_XSIZE ,width);
     ObjectSetInteger (chart_ID,nm, OBJPROP_YSIZE ,height);
     ObjectSetString (chart_ID,nm, OBJPROP_TEXT ,text);
     ObjectSetString (chart_ID,nm, OBJPROP_TOOLTIP ,tooltip);
     ObjectSetString (chart_ID,nm, OBJPROP_FONT ,font);
     ObjectSetInteger (chart_ID,nm, OBJPROP_FONTSIZE ,font_size);
     ObjectSetInteger (chart_ID,nm, OBJPROP_ALIGN ,align);
     ObjectSetInteger (chart_ID,nm, OBJPROP_READONLY ,read_only);
     ObjectSetInteger (chart_ID,nm, OBJPROP_CORNER ,cr);
     ObjectSetInteger (chart_ID,nm, OBJPROP_COLOR ,clr);
     ObjectSetInteger (chart_ID,nm, OBJPROP_BGCOLOR ,back_clr);
     ObjectSetInteger (chart_ID,nm, OBJPROP_BORDER_COLOR ,border_clr);
     ObjectSetInteger (chart_ID,nm, OBJPROP_SELECTABLE , false );
     ObjectSetInteger (chart_ID,nm, OBJPROP_SELECTED , false );
     ObjectSetInteger (chart_ID,nm, OBJPROP_HIDDEN , false );
  }
 }
 
Vitaly Muzichenko :


"1.e-002" (string)Lots mu?
 
Slava :
"1.e-002" (string)Lots mu?

Evet.

 
Slava :
"1.e-002" (string)Lots mu?

Giriş parametrelerindeki lotu 0,05 olarak değiştirdi

Kodu şu şekilde değiştirdi:

   EditCreate( 0 ,prefix+ "LotBuy" ,xd,yd+ 15 , 47 , 15 , 0 , DoubleToString (Lots), "Lot Buy" , "Verdana" , 8 , clrBlack , C'241,239,226' , clrGray , false , ALIGN_CENTER );

   EditCreate( 0 ,prefix+ "LotSell" ,xd,yd+ 15 , 47 , 15 , 0 ,Lots, "Lot Sell" , "Verdana" , 8 , clrBlack , C'241,239,226' , clrGray , false , ALIGN_CENTER );



PS Ancak hemen 0.01 girerseniz, doğru şekilde görüntülenir.

 EditCreate( 0 ,prefix+ "LotBuy" ,xd,yd+ 15 , 47 , 15 , 0 ,( string ) 0.01 , "Lot Buy" , "Verdana" , 8 , clrBlack , C'241,239,226' , clrGray , false , ALIGN_CENTER );
 
Vitaly Muzichenko :

Giriş parametrelerindeki lotu 0,05 olarak değiştirdi

Kodu şu şekilde değiştirdi:



PS Ancak hemen 0.01 girerseniz, doğru şekilde görüntülenir.

Vitaly, ancak DoubleToString'in ikinci bir parametresi var. Ve sürümünüzde zorunludur, aksi takdirde varsayılan olacaktır. Neyse ki ne kadar olduğunu hatırlamıyorum, ilgilenmiyorum.

 
Alexey Viktorov :

Vitaly, ancak DoubleToString'in ikinci bir parametresi var. Ve sürümünüzde zorunludur, aksi takdirde varsayılan olacaktır. Neyse ki ne kadar olduğunu hatırlamıyorum, ilgilenmiyorum.

Varsayılan, 0.01'i 1.e-002 olarak vermemelidir

biz yöneteceğiz

 
Slava :

Varsayılan, 0.01'i 1.e-002 olarak vermemelidir

biz yöneteceğiz

Bu hatanın düzeltileceğine sevindim. Ancak mesajım yalnızca sunulan koddaki DoubleToString'in ikinci bir parametreye ihtiyacı olduğuydu.
 
Igor Zakharov :

derleyici aynı durumlarda farklı davranır.

Kod tabanından 2 dosya indirildi: https://www.mql5.com/en/code/15440

görünüşe göre iTime()'dan önce yapıldı. Biri derler, ikincisi yemin eder:

İşlevler aynıdır:

zorluklar da

Küfür etmesinin nedeni açık, anlaşılır ve otomatik düzeltme ile kolayca düzeltiliyor, ancak benzer durumlarda farklı davranışlar endişe verici.

not:

derlenmiş gösterge düzgün çalışıyor.

Her iki dosya da benim için tam olarak aynı hata listelerine neden oluyor (toplamda 8 adet).

 
Stanislav Korotky :

Her iki dosya da benim için tam olarak aynı hata listelerine neden oluyor (toplamda 8 adet).

Yeniden indirildi, derlemeye çalıştı, her ikisi de hatalı, ancak sayı farklı: 8 ve 9


Otomatik düzeltme raporuna bakılırsa, farklı olmalı.

Yani, dün bir çeşit ME hatası oldu. İlk gördüğüm kullanıcı lehine bir başarısızlık (düzenlemeler olmadan derlendi ve çalıştı!).

 
Igor Zakharov :

Yeniden indirildi, derlemeye çalıştı, her ikisi de hatalı, ancak sayı farklı: 8 ve 9

Otomatik düzeltme raporuna bakılırsa, farklı olmalı.

Evet, gerçekten, aralık 1 daha fazladır.