加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – 表格是否已经打开?

发布时间:2020-12-15 04:10:45 所属栏目:大数据 来源:网络整理
导读:我一直在使用以下代码来检查表单是否已存在: function FormExists(apForm: TObject): boolean;var i: Word;begin Result := False; for i := 0 to Application.ComponentCount-1 do if Application.Components[i] = apForm then begin Result := True; Brea
我一直在使用以下代码来检查表单是否已存在:
function FormExists(apForm: TObject): boolean;
var i: Word;
begin
  Result := False;
  for i := 0 to Application.ComponentCount-1 do
    if Application.Components[i] = apForm then begin
      Result := True;
      Break;
    end;
end;

几年前我从参与的项目中得到了它.这是我第一个Delphi项目之一.

有用.

但是如果有更好,更快的方法,我本周就会徘徊.

解决方法

您可以使用 Screen.Forms代替.它减少了您正在迭代的项目:
function FormExists(apForm: TForm): boolean;
var 
  i: Word;
begin
  Result := False;
  for i := 0 to Screen.FormCount - 1 do
    if Screen.Forms[i] = apForm then 
    begin
      Result := True;
      Break;
    end;
end;

但是,值得注意的是,如果你已经拥有apForm,你知道它存在并且没有必要搜索它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读