Выпущена бета-версия MetaTrader 4 Build 529 с новым компилятором - страница 149

 

Всех с Новым Годом!


Подскажите пожалуйста, возможность использовать более 8 буферов для индикаторов, а также такие способы, как DRAW_FILLING, корректно работают?

Можно какой-нибудь работоспособный пример?

А то у меня какие-то странные вещи получаются, хотя компилятор и не ругается. Но если учесть, что в MQL5 я ничего не делал, то вполне возможно, что я просто что-то не так понял :)


Компилятор ругнулся: 'TimeTradeServer' - function not defined

Это значит, что функция потерялась?


 
ALXIMIKS:

3) памяти может быть 4-8 Гигов и выше....да и процессоры i5 и i7 не редкость...

а то что терминал 4-ки 32-битный и,если не ошибаюсь, не может использовать больше 2-х гиг оперативы, вы не задумывались???

1) на счет только 8 буферов скорее всего это из за архитектуры, или оперативки, точно не знаю.

3. На 64 разрядных ОС не более 4 Гб.

1. Это искуственное ограничение. Можно больше, но не хотят. Наверно, слишком много переделывать.

 

Из справки:

StringBufferLen

Возвращает размер буфера, распределенного для строки.

int StringBufferLen(
string string_var // строка
)

Минимальный размер буфера равен 16.

но фактически минимальный размер буфера, распределенного для строки, равен 123.

При использовании

StringInit

Инициализирует строку указанными символами и обеспечивает указанный размер строки.

bool StringInit(
string& string_var, // строка для инициализации
int new_len=0, // требуемая длина строки после инициализации
ushort character=0 // символ, которым будет заполнена строка
);

все равно размер буфера равен 123, и пример с справки является неверным (StringBufferLen(str) = 123):

void OnStart()
  {
   string str;
   StringInit(str,20,'_');
   Print("str = ",str);
   StringFill(str,0);
   Print("str = ",str,": StringBufferLen(str) = ", StringBufferLen(str));
  }
// Результат
//   str = ____________________
//   str =  : StringBufferLen(str) = 20
//

Справочник MQL4 / Строковые функции / StringFill


 

С Новым Годом, коллеги!

Какой билд на данный момент самый последний? Выходила версия выше 568?

Просто есть подозрение, что терминал опять самостоятельно не обновляется.

 
Night63:

С Новым Годом, коллеги!

Какой билд на данный момент самый последний? Выходила версия выше 568?

Просто есть подозрение, что терминал опять самостоятельно не обновляется.

До пятого не будет обновлений. Есть подозрение, что читать в праздники разучились ;) Ренат совсем недавно об этом писал.
 
artmedia70:
Есть подозрение, что читать в праздники разучились ;) Ренат совсем недавно об этом писал.


"Совсем недавно" - эт аж в прошлом году!;)

Спасиб! Действительно пропустил.

 
Y.A.K._:

Всех с Новым Годом!


Подскажите пожалуйста, возможность использовать более 8 буферов для индикаторов, а также такие способы, как DRAW_FILLING, корректно работают?

Можно какой-нибудь работоспособный пример?

А то у меня какие-то странные вещи получаются, хотя компилятор и не ругается. Но если учесть, что в MQL5 я ничего не делал, то вполне возможно, что я просто что-то не так понял :)


Компилятор ругнулся: 'TimeTradeServer' - function not defined

Это значит, что функция потерялась?


Зафлудили вопросы по сути.
 

С Новым годом !

Вопрос таков мож я чего не понял мож баг вообщем пытаюсь создать графическую метку с текстом но никак не выходит

bool Graf(string txt,int x,int y,string text,int widch,int heigt,color colbg,color coltx,int cor)
  {
   if(ObjectFind(txt)==-1)
   ObjectCreate(0,txt,OBJ_RECTANGLE_LABEL,0,0,0);
   ObjectSetInteger(0,txt,OBJPROP_CORNER,cor);
   ObjectSetInteger(0,txt,OBJPROP_ANCHOR,ANCHOR_LEFT);
   ObjectSetInteger(0,txt,OBJPROP_BGCOLOR,colbg);
   ObjectSetInteger(0,txt,OBJPROP_XDISTANCE,x);
   ObjectSetInteger(0,txt,OBJPROP_YDISTANCE,y);
   ObjectSetString (0,txt,OBJPROP_TOOLTIP,name);
   ObjectSetString (0,txt,OBJPROP_TEXT,text);
   ObjectSetInteger(0,txt,OBJPROP_XSIZE,widch);
   ObjectSetInteger(0,txt,OBJPROP_YSIZE,heigt);
   ObjectSetString (0,txt,OBJPROP_FONT,"Arial");
   ObjectSetInteger(0,txt,OBJPROP_COLOR,coltx);
   ObjectSetInteger(0,txt,OBJPROP_BORDER_COLOR,C'80,80,80');
   ObjectSetInteger(0,txt,OBJPROP_SELECTABLE,true);
   ObjectSetInteger(0,txt,OBJPROP_SELECTED,true);   
   ObjectSetInteger(0,txt,OBJPROP_FONTSIZE,10);
   ChartRedraw();
   return true;
  }

Появляется графическая метка

Но текста на ней нет ...

Не ужели что бы добавить на нее текст нужно дополнительно создавать OBJ_Label ???

Создавать кнопки у которых текст по центру не вижу смысла ...

 

Сервер не доступен или косяк терминала?

 
vadynik:

Сервер не доступен или косяк терминала?


Сервер доступен. Но прежде чем делать обновление я бы посоветовал 10 раз подумать. Идет тестирование бета-версии, если Вам не нужны глюки - не стоит этого делать
Причина обращения: