СообЧа > База Знаний > Программирование > Delphi

Вопрос

На форме 4 (или более) кнопок. Каждая из них свое название и запускаемую программу берет из ini-файла, используя команды TiniFile.Create, ReadString и ShellExecute. Как упростить, чтобы по возможности исключить повторяющиеся процедуры (TForm1.Button1-4.Click) и команды?

Ответ

// Обработчик у всех кнопок одинаковый
procedure btnMyButtonClick(Sender: TObject);
begin
// Создание компонента
with TIniFile.Create(…) do
try
// Проверка того, какая кнопка. Можно сделать любое другое условие,
// но через Tag делать — красивее и быстрее всего. Tag не используется
// Delphi, поэтому можно без боязни его использовать
if TButton(Sender).Tag = 1 then
begin

end;
finally
Free;
end;
end;


Можно и явно указать «отправителя события»
if sender=btn123 then…

vmd



Copyright © 2000-2004 Сообщество Чайников
Контактная информация