Ich bin mit Delphi 10 Seattle auf eine VCL-Anwendung zu arbeiten, und erstellt einen TDBGrid Ereignishandler über die IDE, als ich bemerkte, dass Delphi ein Ref
benutzerdefinierten Attribute für das Rect
Argument hinzugefügt:Was macht [ref] in einer VCL-Anwendung?
procedure TfrmXxx.yyyDrawColumnCell(Sender: TObject;
const [Ref] Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
//
end;
- Wann oder Warum entscheidet sich die IDE dafür?
- Hat es irgendwelche Auswirkungen in einer VCL App?
Update
Hier ist ein Video für diejenigen, die das Verhalten nicht reproduzieren können:
Wenn Delphi beschließt, es zu Ihrem Event-Handler hinzuzufügen: Ich würde raten, wenn die Signatur der Event-Handler-Methode es verwendet. –
Beachten Sie, dass 'ref' nichts mit VCL/FMX oder Intel/Arm zu tun hat. Wenn ein Parameter mit const [ref] markiert ist, bedeutet dies lediglich, dass ein Zeiger auf diesen Parameter übergeben wird (d. h. als Referenz übergeben wird) und nicht der tatsächliche Wert. – Johan
@TOndrej: Ich sehe das Attribut in der Signatur von 'VCL.DBGrids.TDrawColumnCellEvent' ... –