zoukankan      html  css  js  c++  java
  • [杂谈]系统对话框(如浏览目录)被隐藏到主窗体后面造成程序无法操作的临时处理方式

    http://blog.qdac.cc/?p=4808

    说实在话,我被这个问题困扰不知道多少年了,具体的原因我实际上到现在为止仍未找到。不过这里提供一个临时的解决办法,使用定时器来检查当前进程的活动窗口与 Screen.ActiveForm 是否一致,如果不一致,则检查 Screen.ActiveForm 是否被禁用了(注意不要看它的 Enabled,而是调用 API),如果被禁用了,则说明弹出的对话框不是 Delphi 的 Form,我们调用 SetWindowPos 来其它调整到最前面显示就可以,定时器的处理代码参考如下:

    这个暂时是治标的办法,至于治本的办法,由于单独建立 Demo 测试许多时候都无法重现,所以暂时放弃吧,不得已……

  • 相关阅读:
    虚拟机三种虚拟网络的区别
    关于 三次握手和四次挥手 的生动解析
    Tkinter布局管理器
    F#周报2019年第4期
    F#周报2019年第3期
    ML.NET 0.9特性简介
    F#周报2019年第2期
    浏览器保存数据的几种方法
    F#周报2019年第1期
    ML.NET教程之客户细分(聚类问题)
  • 原文地址:https://www.cnblogs.com/westsoft/p/8442540.html
Copyright © 2011-2022 走看看