Ich weiß ja nicht, ob du es ausprobiert hast, oder es einfach geglaubt hast.
Eventuell ist es auch einfach nur zu früh für mich, aber
if Components[i] in [Integer(Panel1), Integer(Panel2), Integer(Panel3)] then ...
gibt bei mir einen "E2010 Inkompatible Typen: 'TComponent' und 'Integer'" compiler error.
Somit dürfte meine Aussage nach wie vor stehen.
Schau dir außerdem einmal den
asm an, der für ein in-Statement erzeugt wird, dann siehst du, warum ein Hardcast eines 32-Bit Pointers auf ein Integer nix bringt (und warum in der
OH das von mir zitierte steht)