Неожиданно столкнулся с проблемой: необходимо удалить по щелчку по Button / BitBtn / Label саму эту сущность.
На старых форумах по Delphi предлагается использовать стандартный подход:
- Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
begin
(Sender as TButton).Free;
end;
Однако же этот способ приводит к вылету программы, что не удивляет.
Вопрос в том, как это реализовать.
Я понял, что есть два рабочих способа: либо через таймер, либо через WinAPI. Можно, конечно, попробовать ещё по щелчку скрывать компонент, а потом при каких-то событиях формы его удалять, опять же. Но, возможно, есть что-то более изящное?
Через WinAPI не хочется, по причине прицела на кроссплатформенность. Возможно, есть некий аналогичный способ для Linux.