Thema: Delphi with sender

Einzelnen Beitrag anzeigen

Benutzerbild von tomsel
tomsel

Registriert seit: 8. Dez 2005
Ort: am Chiemsee
304 Beiträge
 
Delphi 7 Professional
 
#8

Re: with sender

  Alt 9. Jul 2008, 15:48
Zitat von DeddyH:
Und hier eine Variante mit Typprüfung
... und das sogar doppelt.


Ich schließe mich auch noch mit einer weiteren Variante an:

Delphi-Quellcode:
procedure TForm1.panelclick(Sender: TObject);
begin
  if Sender is TPanel then
    begin
      if TPanel(Sender).BevelOuter = bvRaised then
        TPanel(Sender).BevelOuter := bvLowered
      else
        TPanel(Sender).BevelOuter := bvRaised;
    end;
end;
Du erhälst natürlich keine Fehlermeldung, weil TForm ebenfalls die eigenschaft BevelOuter besitzt. Du änderst also BevelOuter des Forms, und nicht des Panels (letzteres hast du ja schon gemerkt). Wie du siehst, kann dieses With eine tückische Fehlerquelle sein und ich sage ebenfalls: Weg damit, zumindest, wenn man nicht 100%ig sicher ist, was da passiert.
Ein Experte ist ein Mann, der hinterher genau sagen kann, warum seine Prognose nicht gestimmt hat. (Winston Churchill)
  Mit Zitat antworten Zitat