Итак, вот в чем проблема: Недавно я столкнулся с проблемой, что я не смог использовать клавиши ускорителя (a.k.a HotKey s) на кнопках внутри GroupBox. Всего минуту назад я узнал, почему, но теперь только проблема в том, что эта причина еще больше озадачивает меня, чем раньше, а именно, что такую кнопку с ускорителем нельзя найти на Форме. Эффект заключается в том, что когда я дважды нажимаю на затронутые кнопки с двойным щелчком, находясь во время разработки, я получаю сообщение об ошибке «Свойство и метод несовместимы».Необоснованная ошибка при двойном щелчке по объекту во время разработки в Delphi
MethodName is VKPInputBtnClick
, что фактически объявлено как функция, а не как метод в блоке.
Что меня озадачивает, так это то, что я не назначил OnClick
обработчик событий для VKPInputBtn любому методу вообще!
Как это возможно, что я могу составить программу и не имеют никаких проблем во время выполнения ... но в дизайн-времени двойной щелчок на кнопке есть такие раздражающие вопросы ....
Любое решение? Переустановка IDE?
Любая помощь очень ценится ...
Итак, все это время, это не так, что клавиши ускорителя не работали. Фактически, у вас никогда не было обработчика OnClick, назначенного кнопке, поэтому вы не могли сказать, работал ли ускоритель в первую очередь. (Вы проверяли, нажата ли кнопка *, нажата ли кнопка во время выполнения?) –
Да, нажатие работает, но не через событие OnClick.Это OnMouseDown -> OnMouseUp (проверка кликов) -> функция VKPInputBtnClick() ;. Да, у меня не было назначенного обработчика событий OnClick, поэтому я использовал Forms OnKeyPress для обработки этих исключительных функциональных возможностей Accelerator Key, поэтому я менялся, что OnKeyPress не срабатывал ... Похоже, мне придется проконсультироваться с Designing, поскольку этот подход довольно неуклюж. ... –
Если вы используете события мыши для обнаружения кликов, вы делаете это неправильно. Используйте OnClick. –