Delphi-Help

Главная Статьи Командная кнопка (Button) Обработка щелчка нескольких кнопок, используя их заголовок

Обработка щелчка нескольких кнопок, используя их заголовок

Оцените материал
(1 Голосовать)


Обработка щелчка нескольких кнопок, используя их заголовок

...с ваших слов я понял, что вы все уже реализовали, но давайте все повторим: вы должны убедиться в том, что событие OnClick привязано к каждой кнопке калькулятора (числовые кнопки 0..9) и указывают на общий обработчик события.

В разделяемом обработчике события получите заголовок обрабатываемой кнопки следующим образом:

    Edit1.Text := TButton(Sender).Caption; 

...я думаю в этом случае самым разумным будет использование свойства Tag каждой кнопки:

назначьте уникальный Tag для каждой кнопки (например, эквивалент арабским цифрам)

    procedure TForm1.Button1Click(Sender: TObject);
begin
  if (Sender is TButton) then
  with (Sender as TButton) do
  {используем Tag}
end; 

Если вам нужен только заголовок, то есть изящный способ получить к нему доступ. Подключите общий обработчик события для всех кнопок и используйте приведение типа как показано ниже:

    procedure TForm1.Edit1Click(Sender: TObject);
begin
 
edit1.text := (sender as TButton).caption ;
end;  

Приведенная ниже конструкция будет недостаточной:

sender.caption

поскольку компилятор не знает о том, имеет ли "sender" свойство caption, или нет.

Авторизация



Счетчики