Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Программа и интерфейс
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 09.03.2011, 22:12
expforex expforex вне форума
Прохожий
 
Регистрация: 09.03.2011
Сообщения: 1
Репутация: 10
По умолчанию Обновление моей формы из dll при обновлении главной формы

сабж

Обновление моей формы из dll при обновлении главной формы

Задача: Есть программа, в которой есть возможность подключать свои скрипты на внутреннем языке. Программа MDI в этой программе есть графике которые обновляются 100 раз в секунду,

графиков может быть много.

Я узнал хендл графика - прицепил на график длл и из длл притянул на этот график форму, сделал у нее родителя - окно графика -

форма появилась и сразу же исчезла.
код формы:

Код:
procedure ShowForm(Appl: THandle);
begin
 Application.Handle := Appl;
 A:=Appl;
 Form1:=TForm1.Create(Application);
 Form1.Parent:=FindControl(Appl);
 Form1.Parentwindow:=Appl;
// InvalidateRect( Form1.Handle, NIL, FALSE ) ;
 Form1.Show;// application.ProcessMessages();
 //SetWindowPos(Form1.Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE or SWP_NOMOVE or SWP_NOACTIVATE);
 end;
Appl - Дескриптор родительского окна
Дело в том что когда я пытался сделать модальную форму - все норм форма поверх окна с графиком но когда открываю 2 график моя форма не привязана к графику на котором я ее запустил.

Т.е. мне нужно:
Запустить форму на другом приложении - не моем - как плагин, только на 4каждом графике отдельном чтобы была своя форма, т.е. все действия с родительской формой проходили так же и с моей.


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

Что подскажите?

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

попробовал сделать так:

Код:
procedure ShowForm(Appl: THandle);
begin
 Application.Handle := Appl;
 A:=Appl;
 Form1:=TForm1.Create(Application);
 Form1.Show; application.ProcessMessages();

 end;

форма появилась на окне на котором я ее запустил, не мерцает, но - когда открываю второй график(документ) моя форма поверх всех окон в программе


-----------------------------------------------------------------------------------
у меня получилось так
открываю свою форму на графике:
Копия 09.03.jpg
Но перехожу на 2 график - моя форма поверх всех окон. картинки приложил
Копия 09.032.jpg

Последний раз редактировалось expforex, 09.03.2011 в 22:37.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:47.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter