Скачать MetaTrader 5

Извлечь текст с OBJ_EDIT

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
XFaost
22
XFaost 2016.10.25 17:51 

Как извлечь текст с OBJ_EDIT
Мне нужно значение уровня, которое введено в OBJ_EDIT, использовать в вычислении формулы и за ней ставить ордер на сделку.
Можете подсказать как извлечь текст?

Vitalie Postolache
12251
Vitalie Postolache 2016.10.25 18:03  

А справку открыть лень? Там есть.

XFaost
22
XFaost 2016.10.25 18:25  
Я не могу найти. Дайте ссылку...
Vitalie Postolache
12251
Vitalie Postolache 2016.10.25 18:41  
XFaost:
Я не могу найти. Дайте ссылку...
F1
XFaost
22
XFaost 2016.10.25 18:53  
Я имею в веду не "я не могу найти справочник", а "я не могу найти информацию об моем вопросе"
LRA
377
LRA 2016.10.25 19:20  
XFaost:  Как извлечь текст с OBJ_EDIT?

Если в MQL4, то пишем в MetaEditor: OBJ_EDIT, ставим на него курсор, нажимаем F1. В открывшейся таблице находим OBJ_EDIT и кликаем по нему. Видим пример программы. Находим функцию, которая Возвращает текст объекта "Поле ввода"  и в ней ... то, что надо. Иди вверху этой страницы в правом краю синей полосы схематическое изображение увеличительного стекла. Кликнуть по нему, ввести OBJ_EDIT ... Если в Дельфи, то еще проще var s: string;  s:=Edit1.Text;  В C++Builder почти так же....... На каком языке вам задали курсовой?

Vitalie Postolache
12251
Vitalie Postolache 2016.10.25 19:21  
OBJ_EDIT  в поиске вбить пробовали? Хотя бы тут, на этом сайте, но справка в метаедиторе свежее.
STARIJ
155
STARIJ 2016.10.25 19:37  
LRA: Если в Дельфи, то еще проще                         var s: string;  s:=Edit1.Text;
VBA еще проще - без двоеточия и точки с запятой :   dim s as string: s=Text1.Text
XFaost
22
XFaost 2016.10.26 14:47  

bool EditDelete(const long   chart_ID=0,  // ID графика
                const string name="Edit"// имя объекта
  {
//--- сбросим значение ошибки
   ResetLastError();
//--- удалим метку
   if(!ObjectDelete(chart_ID,name))
     {
      Print(__FUNCTION__,
            ": не удалось удалить объект \"Поле ввода\"! Код ошибки = ",GetLastError());
      return(false);
     }
//--- успешное выполнение
   return(true);
  }

Что-бы удалить "Edit", нужно прописать  EditDelete(0,"Edit");

------------------------------------------------------------------------------------------------------------------------------------

bool EditTextGet(string      &text,        // текст
                 const long   chart_ID=0,  // ID графика
                 const string name="Edit"// имя объекта
  {
//--- сбросим значение ошибки
   ResetLastError();
//--- получим текст объекта
   if(!ObjectGetString(chart_ID,name,OBJPROP_TEXT,0,text))
     {
      Print(__FUNCTION__,
            ": не удалось получить текст! Код ошибки = ",GetLastError());
      return(false);
     }
//--- успешное выполнение
   return(true);

  }

Что-бы получить текст, что нужно прописать? 

Vitalie Postolache
12251
Vitalie Postolache 2016.10.26 15:10  
XFaost:


Что-бы получить текст, что нужно прописать? 

Чтобы вставить код есть кнопочка SRC наверху в панели редактирования сообщения. 

 А чтобы получить текст, нужно читать весь код из того примера, да открыть справку по ObjectGetString()

Не обязательно брать всю функцию  EditTextGet(), можно создать строковую переменную и присвоить ей результат работы функции  ObjectGetString() в первом варианте.

string text=""; //переменная, в которую будет записан текст
string name="edit"; //имя объекта

text=ObjectGetString(0,name,OBJPROP_TEXT);
XFaost
22
XFaost 2016.10.26 15:24  
Огромное спасибо!
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий