gpt4 book ai didi

delphi - Form OnDeactivate - 需要确定哪个是新的激活控件

转载 作者:行者123 更新时间:2023-12-03 15:49:48 26 4
gpt4 key购买 nike

我有代码显示特定 DBGrid 的搜索表单,该表单放置在另一个表单中(TSearchGridForm 的调用者表单):

procedure TSearchGridForm.FormDeactivate(Sender: TObject);
begin
// Pseudo
if NewActiveControl <> CallerForm.DBGrid then
Close;
end;

TSearchGridForm 由调用者表单通过 .Show (不是模态)激活,当它被停用时,我只想在新的事件控件时关闭/隐藏它<> CallerForm.DBGrid.

只有当用户单击调用者表单上的DBGrid 时,搜索表单才应保持可见,否则我需要关闭它。

我该怎么做?

最佳答案

Delphi 的 TScreen 对象具有 OnActiveControlChange 和 OnActiveFormChange 事件。您可以为这些设置事件处理程序以监视更改并对它们使用react。

有关详细信息,请参阅 D7 在线帮助。有使用这两个事件的 Delphi VCL 代码示例。

关于delphi - Form OnDeactivate - 需要确定哪个是新的激活控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37721652/

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