Можно ли при обработке нажатий нескольких кнопок обойтись одним обработчиком события?

Можно и нужно. Это довольно удобный классический прием, используемый в ООП.
Предположим, Вы пишете калькулятор и у Вас десять цифровых кнопок от 0 до 9. Не надо для каждой кнопки писать свой собственный обработчик событий, удобнее создать только один обработчик нажатия кнопки и присваиваеть его остальным девяти кнопкам.
При вызове обработчика в параметре Sender передается указатель на компонент вызвавший этот обработчик. Для получения доступа к полям и методам указанного компонента необходимо указать Delphi к какому типу относится этот компонент - командой AS.

Пример:

procedure TForm1.ButtonAllClick(Sender: TObject); 
 begin
 
  WITH Sender AS TButton DO
    Showmessage ('Нажата кнопка ' + Caption);
 
end;

Последние комментарии

Счетчики