У меня есть форма AlwaysOnTop, я пытаюсь сделать чтобы она не активировалась, не забирала фокус у другой формы при клике на нее, а просто висела поверх всех окон. Процедура Activate у ее предка TCommonCustomForm не виртуальная, поэтому я не могу ее переопределить. Я пробовал через helper
TVideoFormHelper = class helper for TCommonCustomForm
public
procedure Activate;
end;
procedure TVideoFormHelper.Activate;
begin
showmessage('123');
end;
Но все равно почему то не срабатывает. Сообщение 123 не показывается, а вызывается обычный Activate класса. Что я делаю не так в хелпере? Есть ли какой то другой способ? И если все таки можно через хелпер то как мне сделать чтобы функция ничего не делала только если класс TVideoForm, а в остальных случаях работала как обычно
if self is TVideoForm then
exit
else
// тут вызываем нормальный activate класса TCommonCustomForm
Вопрос
des80
У меня есть форма AlwaysOnTop, я пытаюсь сделать чтобы она не активировалась, не забирала фокус у другой формы при клике на нее, а просто висела поверх всех окон. Процедура Activate у ее предка TCommonCustomForm не виртуальная, поэтому я не могу ее переопределить. Я пробовал через helper
TVideoFormHelper = class helper for TCommonCustomForm public procedure Activate; end; procedure TVideoFormHelper.Activate; begin showmessage('123'); end;
Но все равно почему то не срабатывает. Сообщение 123 не показывается, а вызывается обычный Activate класса. Что я делаю не так в хелпере? Есть ли какой то другой способ? И если все таки можно через хелпер то как мне сделать чтобы функция ничего не делала только если класс TVideoForm, а в остальных случаях работала как обычно
if self is TVideoForm then exit else // тут вызываем нормальный activate класса TCommonCustomForm
Ссылка на комментарий
17 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.