я тут на форуме уже представлял : сделал и раздаю бесплатно, библиотеку ATcl, прицепил целый скриптовый движок с его инфраструктурой (и вебсокетами в том числе) http://nektomk.ru/atcl:start
Экспериментально даже Tk с его окнами и виджетами работает. Чтобы совсем захорошело, надо немного разобраться с оконными сообщениями виндовс, когда забирать/когда нет.. Сейчас текущие работы закончу, и продолжу. Уж больно "вкусная" штуковина получилась - море возможностей..Ради эксперимента даже генерацию и компиляцию модулей "на лету" из С++ пробовал, прямо из MT4
Максим, привет.
Ты провел огромную работы! Ты молодец, и я тебе об этом уже говорил.
Но в настоящий момент в твоем проекте для меня лично есть некоторые ограничения:
1. Для работы с библиотекой необходимо устанавливать на комп ATcl, что не совсем удобно, особенно потребителям
2. Библиотека работает пока только с 32 разрядными приложениями, то есть с МТ5 она стыковаться не будет, пока не будет.
3. Для создания форм нужно изучать сам ATcl, чтобы написать скрипт формы, который хранится в отдельном файле
4. Сами создаваемые формы являются все же свободными, а не прикрепленными к графикам.
Да, созданная и активно развивающаяся библиотека имеет мощный потенциал, но пока к практическим задачам ее сложно применить. Уверен что это пока, так как ты движешься семимильными шагами )))
Всем привет, подскажите что то у меня никак не получается форму делфи внедрить в MT4 build 1260. Получается она поверх всего терминала, при
удалении советника виснет весь терминал. Хотелось бы чтобы форма было внутри окна графика.
Окно надо задавать с учётом родительского, найти его хэндл и использовать. И ещё надо использовать основной интерфейсный поток терминала, ну это чтобы конфликтов не было. При удалении советника не забывать отсылать сообщение о закрытии окна(SendMessage).
я тут на форуме уже представлял : сделал и раздаю бесплатно, библиотеку ATcl, прицепил целый скриптовый движок с его инфраструктурой (и вебсокетами в том числе) http://nektomk.ru/atcl:start
ветка форума вот она : https://www.mql5.com/ru/forum/224745
Экспериментально даже Tk с его окнами и виджетами работает. Чтобы совсем захорошело, надо немного разобраться с оконными сообщениями виндовс, когда забирать/когда нет..
Сейчас текущие работы закончу, и продолжу. Уж больно "вкусная" штуковина получилась - море возможностей..Ради эксперимента даже генерацию и компиляцию модулей "на лету" из С++ пробовал, прямо из MT4
Максим, привет.
Ты провел огромную работы! Ты молодец, и я тебе об этом уже говорил.
Но в настоящий момент в твоем проекте для меня лично есть некоторые ограничения:
1. Для работы с библиотекой необходимо устанавливать на комп ATcl, что не совсем удобно, особенно потребителям
2. Библиотека работает пока только с 32 разрядными приложениями, то есть с МТ5 она стыковаться не будет, пока не будет.
3. Для создания форм нужно изучать сам ATcl, чтобы написать скрипт формы, который хранится в отдельном файле
4. Сами создаваемые формы являются все же свободными, а не прикрепленными к графикам.
Да, созданная и активно развивающаяся библиотека имеет мощный потенциал, но пока к практическим задачам ее сложно применить. Уверен что это пока, так как ты движешься семимильными шагами )))
Всем привет, подскажите что то у меня никак не получается форму делфи внедрить в MT4 build 1260. Получается она поверх всего терминала, при удалении советника виснет весь терминал. Хотелось бы чтобы форма было внутри окна графика.
Советник MQL4:
//+------------------------------------------------------------------+
//| test.mq4 |
//| |
//| |
//+------------------------------------------------------------------+
#property copyright ""
#property link ""
#property version "1.00"
#property strict
#import "form.dll"
int ShowIn(int hwnd);
#import
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
int hwnd=ChartGetInteger(0,CHART_WINDOW_HANDLE,0);
ShowIn(hwnd);
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//closeAForm();
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
//---
}
//+------------------------------------------------------------------+
Код DELPHI:
library form;
uses
System.SysUtils,
System.Classes,
Windows,
Vcl.Forms, Vcl.Dialogs,
DLL in 'DLL.pas' {Form1};
{$R *.res}
function ShowIn(handle: HWND): integer; stdCall;
begin
Application.Handle := Handle;
Form1:=TForm1.CreateNew(Application);
Form1.ShowModal;
Form1.Free;
end;
exports ShowIn;
begin
IsMultiThread := true;
end.