Как отключить нажатие кнопки, если в ListView не выбран элемент
Добавил событие для ListView OnSelectItem, однако после первого выбора элемента, если кликнуть на пустое место, кнопка уже не отключается.

Изначально доступность кнопки выставлена на false. В обработчик события на фото(реагирует на нажатие по элементу) включается доступность кнопки. Однако при отмене выбора элемента, доступность кнопки не уходит в состояние false по очевидным причинам. Как можно всегда отключать кнопку, если не выбрано ни одного элемента в контроле ListView
Ответы (1 шт):
Решение было найдено. Действие кнопки требуется занести в ActionList и назначить соответствующий обработчик .Execute в разделе events. После этого добавляем обработчик события OnUpdate для нашего ActionList, в котором прописываем следующую конструкцию: <название действия в actionlist>.enabled:=(listview.selected<>nil). Ниже приведен пример
procedure TFMain.ActShowReportFormExecute(Sender: TObject);
begin
FReportFilm.show;
FMain.Enabled:=false;
end;
procedure TFMain.ActionList1Update(Action: TBasicAction; var Handled: Boolean);
begin
ActShowReportForm.Enabled:=(ListViewMain.Selected<>nil);
end;