清除面板上所有控件的值

procedure Pub_ClearOnePanCondition(APan: TWinControl);
var
  intI: integer;
  PanTemp: TScrollBox;
begin
  for intI := 0 to APan.ControlCount - 1 do
  begin
    if (APan.Controls[intI] is TScrollBox) then
    begin
      PanTemp := TScrollBox(APan.Controls[intI]);
      Pub_ClearOnePanCondition(PanTemp);
    end;

    if (APan.Controls[intI] is TPanel) then
      Pub_ClearOnePanCondition(TPanel(APan.Controls[intI]));

    if (APan.Controls[intI] is TCustomEdit) then TCustomEdit(APan.Controls[intI]).Text := '';

    if (APan.Controls[intI] is TCheckBox) then TCheckBox(APan.Controls[intI]).Checked := False;
    if (APan.Controls[intI] is TRzCheckBox) then TRzCheckBox(APan.Controls[intI]).Checked := False;
    if (APan.Controls[intI] is TComboBox) then
    begin
      if TComboBox(APan.Controls[intI]).Style = csDropDownList then
        TComboBox(APan.Controls[intI]).ItemIndex := -1
      else
      begin
        TComboBox(APan.Controls[intI]).ItemIndex := -1;
        TComboBox(APan.Controls[intI]).Text := '';
      end;
    end;
    if (APan.Controls[intI] is TRzComboBox) then
    begin
      if TRzComboBox(APan.Controls[intI]).Style = csDropDownList then
        TRzComboBox(APan.Controls[intI]).ItemIndex := -1
      else
      begin
        TRzComboBox(APan.Controls[intI]).ItemIndex := -1;
        TRzComboBox(APan.Controls[intI]).Text := '';
      end;
    end;
    if (APan.Controls[intI] is TDateTimePicker) then TDateTimePicker(
      APan.Controls[intI]).Checked := False;
    if (APan.Controls[intI] is TRZDateTimePicker) then TRZDateTimePicker(
      APan.Controls[intI]).Checked := False;
    if (APan.Controls[intI] is TRZDateTimeEdit) then TRZDateTimeEdit(
      APan.Controls[intI]).Clear;

    if (APan.Controls[intI] is TRadioGroup) then
    begin
      if TRadioGroup(APan.Controls[intI]).Items.Count > 0 then
      begin
        if TRadioGroup(APan.Controls[intI]).Tag > 0 then
          TRadioGroup(APan.Controls[intI]).ItemIndex := TRadioGroup(APan.Controls[intI]).Items.Count - 1
        else TRadioGroup(APan.Controls[intI]).ItemIndex := 0;
      end;
    end;
  end;
end;

  

原文地址:https://www.cnblogs.com/rogge7/p/4498667.html