Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Сервис Фриланс: безопасный способ заказать робота. Попробуй сам!
Alexey Lopatin
30296
Alexey Lopatin 2007.06.25 16:22  
elritmo:

Luptator , скажи а почему ты три раза вызываешь GetParent

Как я понимаю ты поднимаешься в иерархии окон на три выше ? Только вот зачем?

h_wnd:=GetParent(chart_hwnd);
if(h_wnd>0) then
GetWindowText(h_wnd,PAnsiChar(capt),7);
h_wnd:=GetParent(h_wnd);
h_wnd:=GetParent(h_wnd);

Писал давно. Еле вспомнил. (Ещё раз убедился в том, что нужно писать комментарии в коде.) Как я уже говорил, мне нужно было отображать в окне картинку. Предварительно иерархию окон я исследовал утилитой Spy++(Она входит в состав Visual Studio).Если родительским окном является окно графика, то при его обновлении обновляется и моё окно. При частом изменении цены происходит эффект мигнания. Поэтому я не привязал не к окну графика, а к его родителю.
Кажется, есть возможность устранить мигание другим способом.
Кстати, начал проверять библиотеку и обнаружил у себя ошибку. Когда вешаешь несколько моих индикаторов на несколько графиков, то при удалении этих индикаторов падает терминал.
Алексей
1565
Алексей 2007.06.25 16:44  

В индикаторе у меня так и продолжает работает на миг появится моё окно и пропадает. Даже если сделать по твоему методу.

Но видимо есть какая то разница вызывать из индикатора или из эксперта функцию из длл которая показывает окно.

Хотя ShowMessage показывает диалогове окно в любом случае э то тоже окно типа диалог.

Сергей Мурзинов
159
Сергей Мурзинов 2007.06.25 17:08  
elritmo:

Luptator , скажи а почему ты три раза вызываешь GetParent



 


Sergey_Murzinov, спрашивай в этой теме если что интересует



Все отлично разобрался.
Alexandra
231
Alexandra 2009.01.10 00:11  

Danke!

спасибо!
Андрей
1890
Андрей 2009.01.10 11:39  
elritmo >>:

В индикаторе у меня так и продолжает работает на миг появится моё окно и пропадает.

Можно вот так сделать: Запускается Exe-шник. Exe-шник создает окно (можно Stay On Top).

Ваша Dll ищет окно и использует сообщение WM_COPYDATA, чтобы передать данные.

harbor
117
harbor 2013.01.18 05:01  
Подскажите, а как сделать наоборот, то есть передавать из екзешника данные через dll в советник?
harbor
117
harbor 2013.01.21 00:25  

тоже запускается форма и пропадает

как победить то? 

Рустам
3597
Рустам 2013.01.21 00:48  
harbor:

тоже запускается форма и пропадает

как победить то? 


  сделать ее модальной
harbor
117
harbor 2013.02.06 08:29  
сделал модальной и в отдельном потоке, теперь все нормально работает, скрипт работает в цикле и получает данные с кнопок в dll 
/ /12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий