Re[3]: MDI Child форма из DLL и что б работало всё!
От: Slicer [Mirkwood] Россия https://ru.linkedin.com/in/maksim-gumerov-039a701b
Дата: 13.10.05 03:52
Оценка: +2
Здравствуйте, AlekseyVP, Вы писали:

AVP> Избежать этого как-нибудь можно? Дело в том, что формы могут быть COM обьектами, решение пока не принято, думаю это дело вкуса начальника ...

Ну и что, что COM-объектами, в чем проблема-то? Или не COM, а OLE, т.е. со встраиванием в другие приложения? Так вы определитесь — или уж окна MDI-Child, или могут встраиваться. Если последнее нужно, делайте сразу встраивание, а в вашем дельфевом приложении заводите MDI-Child'ы и встраивайте экземпляры вашей ActiveX-формы в них.

Slicer
Специалист — это варвар, невежество которого не всесторонне :)
Re: MDI Child форма из DLL и что б работало всё!
От: Slicer [Mirkwood] Россия https://ru.linkedin.com/in/maksim-gumerov-039a701b
Дата: 13.10.05 03:59
Оценка: 2 (1)
Здравствуйте, AlekseyVP, Вы писали:

AVP>Задача: необходимо что бы формы приложения находились в DLL, создавались тоже в DLL. Далее, необходимо, что бы: выводился Hint (подсказка), работал Tab (переход по контролам), работали ShortCut (горячие клавиши). С первым и вторым я справился, а вот как быть с горячими клавишами? У кого есть идеи?

Просто передать в Dll из главного приложения объект Application — не проходит? А в dll написать Application := _тот_который_передали_.

Можно скомпилировать не dll, а bpl. Тогда, правда, не так просто будет приделать объекты в качестве Com-серверов, чтобы их могли грузить другие приложениям. Но все равно можно, наверное: вводим дополнительную dll, которая эту bpl использует как рантайм-пакет, а сервера создает из объектов, объявленных в этой bpl (ведь в dll их объявления тоже видимы)

Slicer
Специалист — это варвар, невежество которого не всесторонне :)
Re[7]: MDI Child форма из DLL и что б работало всё!
От: AlekseyVP Россия  
Дата: 13.10.05 07:04
Оценка:
D>>Я, кстати, пе понял понятия "клонировать объекты Application и Screen EXE". Не DLL.Application.Handle := EXE.Application.Handle ли?
D>>Слабо верится что это поможет решить проблемы, которые могут возникнуть. Скорее породит новые, которые придется решать и не всегда корректно.

__>Идею брал здесь:

__>Топик плюс пример
Да этот пример пол ИНета знает, только глюковат пример, не все объекты переназначаются К тому же не работает клавиша TAB

__>Делал подобное, всё работает уже 5 лет (заказчик не жаловался ).

Ну так ты диалоги делал или MDI Child ? Мля, проблема как раз в MDI Child формах. И, как я уже писал выше, только в обработке ShortCut'ов. Если есть идеи — welcome
Re[2]: MDI Child форма из DLL и что б работало всё!
От: AlekseyVP Россия  
Дата: 13.10.05 07:56
Оценка:
AVP>>Задача: необходимо что бы формы приложения находились в DLL, создавались тоже в DLL. Далее, необходимо, что бы: выводился Hint (подсказка), работал Tab (переход по контролам), работали ShortCut (горячие клавиши). С первым и вторым я справился, а вот как быть с горячими клавишами? У кого есть идеи?
SM>Просто передать в Dll из главного приложения объект Application — не проходит? А в dll написать Application := _тот_который_передали_.
Нет, это не работает К тому же, если не использовать RunTime пакеты, то пришлось делать обработку клавиши TAB самому. Решение пришлю, если кого интересует.
SM>Можно скомпилировать не dll, а bpl. Тогда, правда, не так просто будет приделать объекты в качестве Com-серверов, чтобы их могли грузить другие приложениям. Но все равно можно, наверное: вводим дополнительную dll, которая эту bpl использует как рантайм-пакет, а сервера создает из объектов, объявленных в этой bpl (ведь в dll их объявления тоже видимы)
Спасиба за совет, в любом случае ещё есть над чем поработать.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.