Очистить TEdit контроль рад студия Delphi - PullRequest
0 голосов
/ 23 сентября 2018

При использовании TEdit на правой стороне остается маленькая иконка «x».Как после нажатия на иконку очистить поле TEdit.

Tnx all!

enter image description here

1 Ответ

0 голосов
/ 23 сентября 2018

Delphi предоставляет TClearEditButton для очистки содержимого TEdit.Его можно добавить, щелкнув правой кнопкой мыши и выбрав AddItem - TClearEditButton во всплывающем меню.Он также имеет процедуру Click, переопределенную в модуле FMX.Edit, такую ​​как:

procedure TClearEditButton.Click;
var
  EditTmp: TCustomEdit;
begin
  inherited Click;
  EditTmp := GetEdit;
  if EditTmp <> nil then
  begin
    if EditTmp.Observers.IsObserving(TObserverMapping.EditLinkID) then
      if not TLinkObservers.EditLinkEdit(EditTmp.Observers) then
        Exit; // Can't change
    EditTmp.Text := string.Empty;
    if EditTmp.Observers.IsObserving(TObserverMapping.EditLinkID) then
      TLinkObservers.EditLinkModified(EditTmp.Observers);
    if EditTmp.Observers.IsObserving(TObserverMapping.ControlValueID) then
      TLinkObservers.ControlValueModified(EditTmp.Observers);
  end;
end;

, которая не требует написания обработчика событий OnClick для TClearEditButton, если вы не хотите выполнять какую-либо другую работунаряду с очисткой редактирования.

Если вы используете TEditButton, то вы должны написать обработчик события OnClick, например:

procedure TForm1.EditButton1Click(Sender: TObject);
begin
  Edit1.Text:= EmptyStr;
end;
...