标签: .net winforms dialog window
我在主申请表中有一个计时器。
计时器每N秒显示一个唠叨屏幕。
但是如果任何模态对话框窗口打开,我想避免显示唠叨屏幕。否则会发生重叠。
我可以使用Application.OpenForms,但这不会计算OpenFileDialog等对话框。
Application.OpenForms
OpenFileDialog
如何检测当前是否显示任何子对话框?
答案 0 :(得分:2)
考虑使用这些Win32 apis:
GetForegroundWindow(); GetAncestor(foregroundWindow, GA_ROOTOWNER); GetWindowThreadProcessId(foregroundWindow, out activeProcessId)