Мой подход. Ядро - Движок. - страница 57

 
Реter Konow:

Я бы уже опубликовал бесплатную версию, если бы был конструктив. Но я вижу повсеместный, ярковыраженный и малообъяснимым негатив. Причем, со всех сторон. Этот феномен я пытаюсь понять.

Петр, полтора года назад я тебе в личке писал:

Нет никакого феномена. Есть очевидность, которую ты отказываешься понимать. 
А очевидность в том, что ты пользуешься устаревшими методами программирования и принципиально не хочешь осваивать новые толи по причине лени, толи по причине крайней степени консерватизма или же просто по причине протестного поведения, уходящее корнями в детство.

 
Реter Konow:

Нужно знать С#. Нужно уметь писать DLL. Нужно организовать И продумать взаимодействие между формой и МТ-приложением.

Давайте по полочкам разложим все этапы и посмотрим, действительно ли все так просто как Вы говорите. Мне самому интересно.

Скиньте пожалуйста код ДЛЛ. 

хм, вроде и обьясняю по максимуму, я плохой учитель, но быстро учусь )))

ладно, попробую подробно:

1. Скачиваете компилятор C#, я скачал SharpDevelop http://www.icsharpcode.net/OpenSource/SD/Download/Default.aspx , выбрал версию Downloads for SharpDevelop 5 (Frameworks 2.0 to 4.5.1)  = 14 Мб

2. Устанавливаете, запускаете

3. Создаем новый проект: File - New - Solution - Папка С# - Class Library

4. Добавляем визуальную форму: File - New -New file (нажимаем Create file inside project) - Папка С# - Папка Windows Applications - Form

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

6. В файле с именем нашего проекта пишем основной код:

namespace Mylib
{
        /// <summary>
        /// Description of TestClass.
        /// </summary>
        public class TestClass
{
        static Form1 f=new Form1();
        public static void Run()
   {
        f.ShowDialog();
   }
}
}

7. нажимаем F8 и ищем на диске, в папке своего проекта свою готовую .dll

в МТ5 пишем эксперта, который вызовет форму:

#import "Mylib.dll"
#import
//+------------------------------------------------------------------+
int OnInit()
  {
   TestClass::Run();
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
void OnTick()
  {
  }
//+------------------------------------------------------------------+

запускаем, юзаем готовое окошко с элементами управления, затем делаем обработчики кнопок в MQL ( где удобно в OnTick() или OnTimer() ) и класс в C#, который будет по запросу возвращать нам, что нажимал пользователь

вот приатачил исходник эксперта и .dll, сегодня лень у компа сидеть, завтра разберусь почему в тестере эта форма не хочет работать, но как я и писал, информации в сети много, для личного пользования проще не придумаешь ;)

Файлы:
MQL5.zip  11 kb
 
Igor Makanu:

хм, вроде и обьясняю по максимуму, я плохой учитель, но быстро учусь )))

ладно, попробую подробно:

1. Скачиваете компилятор///

Думаете ему это надо, что бы научиться (кстати, спасибо, за краткую и точную инструкцию)?

Он сейчас начнет рассказывать почему его подход лучше, а этот никуда не годен.

 
Dmitry Fedoseev:

Думаете ему это надо, что бы научиться (кстати, спасибо, за краткую и точную инструкцию)?

Он сейчас начнет рассказывать почему его подход лучше, а этот никуда не годен.

ой даже не знаю, может Вы и правы!

но я по пути наименьшего сопротивления... дурных мыслей в голове не держал, увидел к себе вопрос, взял и ответил, на форумах всегда такое правило: ты мне я тебе )))

 
Vitalii Ananev:
По чему бы вам Петр, тоже самое не сделать с использованием ООП. Я не понимаю, почему вы не используете его возможности и даже не пытаетесь вникнуть в принципы ООП. Профессия IT специалиста сама по себе предполагает, что этот самый специалист постоянно занимается самообразованием. Так как технологии не стоят на месте появляются новые языки программирования, растут мощности ПК. Вообщем прогресс не стоит на месте. А вы  со своим стилем программирования  застряли  на уровне 2000 годов, и предлагаете другим программистам вернутся к уровню тех лохматых годов. Уже не раз повторял и еще раз повторю. Попробуйте сделать все это с использованием ОПП. 

Да какая разница - с ООП или без ООП будет сделано то же самое. То, что и так уже сделано (

 
Nikolai Semko:

Петр, полтора года назад я тебе в личке писал:

Нет никакого феномена. Есть очевидность, которую ты отказываешься понимать. 
А очевидность в том, что ты пользуешься устаревшими методами программирования и принципиально не хочешь осваивать новые толи по причине лени, толи по причине крайней степени консерватизма или же просто по причине протестного поведения, уходящее корнями в детство.

Николай, Вы увлеклись и непонятно, отчего. Могу пофантазировать: 

1. У Вас есть квалификация психиатра, но клятву Гиппократа Вы не произносили. 

2. Вас занесло маненько и Вы уже готовы извиниться перед Петром за совершенно неэтичное суждение. 

 
Алексей Тарабанов:

Николай, Вы увлеклись и непонятно, отчего. Могу пофантазировать: 

1. У Вас есть квалификация психиатра, но клятву Гиппократа Вы не произносили. 

2. Вас занесло маненько и Вы уже готовы извиниться перед Петром за совершенно неэтичное суждение. 

В цивилизованных странах мира очень высокий уровень психологизации населения (в смысле интереса к психологии и ее понимания), поэтому. в общем, ничего особенного, когда один человек пытается понимать поведение другого человека и рассуждает об этом, и в общем не секрет, что все особенности поведения корнями уходят в детство, этим ни кого не удивишь и не обидишь, и все к этому спокойно относятся. 

 
Алексей Тарабанов:

Да какая разница - с ООП или без ООП будет сделано то же самое. То, что и так уже сделано (

В общем-то без разницы, если не пытаться неистово доказывать все преимущества своего подхода и полную несостоятельность ООП в принципе.

 
Dmitry Fedoseev:

В цивилизованных странах мира очень высокий уровень психологизации населения (в смысле интереса к психологии и ее понимания), поэтому. в общем, ничего особенного, когда один человек пытается понимать поведение другого человека и рассуждает об этом, и в общем не секрет, что все особенности поведения корнями уходят в детство, этим ни кого не удивишь и не обидишь, и все к этому спокойно относятся. 

Давайте и я порассуждаю о том, каким местом вперед родился какой-нибудь хороший человек,- например - Николай Семко и что у него при этом повредилось. Мы ведь цивилизованная страна. 

 
Dmitry Fedoseev:

В общем-то без разницы, если не пытаться неистово доказывать все преимущества своего подхода и полную несостоятельность ООП в принципе.

Если пытаться, то будет разница? Таблица - где ООП? 

Давайте иначе, горячие ООП- овские парни. Сделайте 2 таблицы. Первая - без ООП, вторая - с ним. Главное - не перепутайте. 

Причина обращения: