Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Variable sender im Debugger überwachen

  Alt 22. Okt 2015, 12:10
Moin...
Zitat:
Zumindest denke ich, dass if sender = btn1 then diesen Vergleich durchführt.
eher doch (Bsp.):
if TButton(Sender).Name = 'btn1'
Njain.

Will man nun die korrekte Refernz vergleichen, oder ob es den selben gleichen Namen besitzt?
Vor allem, weil damit sogar ein TEdit mit dem Namen btn1 durchgelassen würde

Delphi-Quellcode:
if Sender = btn1
then
ist vergleichbar mit
Delphi-Quellcode:
if (Sender is TButton) // ah ein Button
and (TButton(Sender).Owner = Self) // diese Form ist der Owner
and (TButton(Sender).Name = 'btn1' ) // der Name passt auch
then // dann wird es wohl btn1 sein
  Assert( Sender = btn1 );
und auch nur deswegen, weil der Owner dafür sorgt, dass der Name der Unter-Komponenten eindeutig ist.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (22. Okt 2015 um 12:12 Uhr)
  Mit Zitat antworten Zitat