Hi,
masteroffinalfantasy hat folgendes geschrieben: |
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| parent:=Form1; Visible:=true; Width:=11; Height:=11; Transparent:=true; Left:=0; Top:=0; OnMouseDown:=form1.bilderMouseDown; OnMouseUp:=form1.bilderMouseUp; Name:='bild'+inttostr(length(bilder)-1); | |
Je nachdem, wo du deinen Code platzierst, kann es dir auch passieren, dass die einzelnen Eigenschaften auf das falsche Objekt bezogen werden:
Delphi-Quelltext
1: 2: 3: 4:
| procedure TForm1.DoSomething; begin end; |
TForm1 hat nämlich auch eine Eigenschaft namens 'Left'. Durch das with-Statement ist nun nichtmehr klar, auf welches Objekt sich alles bezieht. Bei Klassenmethoden wird nämlich praktisch der gesammte Prozedurtext in ein with-Statement gesetzt(du kannst ja auch z.B. außerhalb deines with-Statements 'Left' setzen

alles steht in einem 'with self do').
Somit hast du hier praktisch zwei with-Statements ineinander.
Das with-Statement kann zwar viel Tipparbeit ersparen, gilt jedoch aus gutem Grund als unsauber: Es kann zu nur sehr schwer auffindbaren Fehlern und damit nächtelangen Debugging-Sitzungen führen.
mfG,