gpt4 book ai didi

delphi - Delphi 中的任何操作引发的 OnChange 事件是否有替代方案?

转载 作者:行者123 更新时间:2023-12-03 14:51:08 24 4
gpt4 key购买 nike

来自 Delphi XE 文档:-

Note: OnChange only occurs in response to user actions. Changing the Text property programmatically does not trigger an OnChange event.

当发生任何更改(由用户或以编程方式)时,是否有任何其他可用于 TComboBox 的事件?更改 TComboBox 的 ItemIndex 属性时,不会引发任何事件。

最佳答案

当文本被修改时,组合框控件会被发送一个CM_TEXTCHANGED。 VCL 控件选择不在此处显示事件,但您可以。有很多方法可以做到这一点。这里我举例说明了快速而肮脏的中介层类:

TComboBox = class(Vcl.StdCtrls.TComboBox)
procedure CMTextChanged(var Message: TMessage); message CM_TEXTCHANGED;
end;

procedure TComboBox.CMTextChanged(var Message: TMessage);
begin
inherited;
Beep;
end;

当然,您会希望在生产代码中以一种不那么麻烦的方式来完成此操作。

关于delphi - Delphi 中的任何操作引发的 OnChange 事件是否有替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8328220/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com