powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / DLL Form & TMainMenu Hot Keys !!!
6 сообщений из 6, страница 1 из 1
DLL Form & TMainMenu Hot Keys !!!
    #32120922
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
ALL !

Такая проблема:
Форма создается в DLL с Owner = Application.Handle. Если DLL-форма активна, то при вызове по HotKey функции меню приложения, убивающей эту форму, возникает Access Vialtion.
Почему это происходит - понятно: попытка возвращения фокуса несуществующему контролу.
А как с этим бороться?
Можно написать свой класс от TMenuItem с public-свойством вызвавшего контрола, или свой метод BeforeHotKey...
А есть ли более простые методы???
...
Рейтинг: 0 / 0
DLL Form & TMainMenu Hot Keys !!!
    #32121082
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Для обитателей форума DLL - темный лес?
Или некорректно вопрос задан?
...
Рейтинг: 0 / 0
DLL Form & TMainMenu Hot Keys !!!
    #32121115
manumba
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ты передаешь в dll сам Application?

procedure SetApplication (a: TApplication);
begin
Application:=a;
end;
...
Рейтинг: 0 / 0
DLL Form & TMainMenu Hot Keys !!!
    #32121130
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Конечно передаю! Иначе MainMenu Hot Keys главной формы не работали бы (из DLL-формы).
Проблема в передаче фокуса ПОСЛЕ обработки MenuItem.OnClick.
...
Рейтинг: 0 / 0
DLL Form & TMainMenu Hot Keys !!!
    #32121173
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Предыдущее значение Application надо сохранить, например в OldApp, а перед выгрузкой DLL обязательно восстановить значение Application:=OldApp;
...
Рейтинг: 0 / 0
DLL Form & TMainMenu Hot Keys !!!
    #32121333
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Вот тут /topic/25673 я писал об этом. Но в данном случае это не помогает, так как при вызове TMenuItem.OnClick(через HotKey) TApplication пытается передать управление вызвавшему контролу, а он уничтожен
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / DLL Form & TMainMenu Hot Keys !!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]