Thema: Delphi Variabler Elementenamen

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

AW: Variabler Elementenamen

  Alt 18. Feb 2012, 16:03
Zitat:
Delphi-Quellcode:
function TForm1.IsActive(nummer: Integer): Boolean;
begin
  if CheckBox[nummer].Checked = true
    then begin
        Edit[nummer].Active := True;
        Edit[nummer].Visible := True;
        end
    else begin
        Edit[nummer].Active := False;
        Edit[nummer].Visible := False;
        end;
end;
Dazu dann noch:

* Besser niemals auf =True prüfen ... if CheckBox[nummer].Checked then ist kürzer und fehlerunanfälliger.

* if x then y := true else y := false; kann man auf x := y; kürzen.

Delphi-Quellcode:
function TForm1.IsActive(nummer: Integer): Boolean;
begin
  Edit[nummer].Active := CheckBox[nummer].Checked;
  Edit[nummer].Visible := CheckBox[nummer].Checked;
end;
bzw.
Delphi-Quellcode:
function TForm1.IsActive(nummer: Integer): Boolean;
var
  B: Boolean;
begin
  B := CheckBox[nummer].Checked;
  Edit[nummer].Active := B
  Edit[nummer].Visible := B;
end;
PS: Ist dir die Warung deines Compilers aufgefallen?
Du hast eine Funktion, aber nirgendwo wird das Result zugewiesen.

Delphi-Quellcode:
procedure TForm1.SetActive(nummer: Integer);
var
  B: Boolean;
begin
  B := CheckBox[nummer].Checked;
  Edit[nummer].Active := B
  Edit[nummer].Visible := B;
end;
oder
Delphi-Quellcode:
function TForm1.IsActive(nummer: Integer): Boolean;
begin
  Result := CheckBox[nummer].Checked;
  Edit[nummer].Active := Result
  Edit[nummer].Visible := Result;
end;
Wobei IsActive garnicht stimmt, denn schließlich liest du nicht (nur) aus, sondern setzt Eigenschaften eines Edits.
Abgesen davon ist der restlich Name IsActive auch nicht wirklich aussagefähig, denn was und wo/womit wird denn gemacht?
> z.B. SetInputEditActive oder so ähnlich
$2B or not $2B

Geändert von himitsu (18. Feb 2012 um 16:57 Uhr)
  Mit Zitat antworten Zitat