Theoretisch nicht. Du musst nur drauf achten, dass du in einem Fall wie oben noch eine Vererbungshierarchie hast, die einen "freien" Slot hat. Ansonsten musst du halt statt des inherited calls den Code aus der anderen Methode kopieren. In den neueren Delphi Versionen kannst du über class helper sogar auf private Member zugreifen - sehr nützlich, wenn du wie ebend erwähnt Code kopieren musst, der auf solche zugreift.
Dachte ich es mir doch, dass das mit dem inherited in Deinem Code nicht funktionieren kann, nicht wahr?
Ich verfolge diesen Ansatz schon eine Weile, um in DSharp diese leidigen Interceptor Klassen und die damit einhergehende zwingende Reihenfolge in der uses Klausel loszuwerden.
Tja, so ändern sich die Zeiten: Noch vor nicht gar zu langer Zeit waren Class-Interceptoren so etwas von heißer Stoff...
Ansonsten habe ich mit dem Austausch/Umbiegen/Korrigieren von TcxCustomInnerListBox.NeedDrawFocusRect() noch einen schönen Anwendungsfall Deiner Lösung, um den dämlichen Fokus-Rect der Listbox loszuwerden. Derzeit funktioniert es nur, indem ich der InnerlistBox eine Fake-OnDrawItem-Prozedur zuweise. Und das ist, was ich ohne Umschweife, die sich manchmal aber gar nicht, wenn nicht sogar überhaupt nicht, verhindern lassen, zugebe, nicht sehr elegant.