【发布时间】:2015-07-24 14:43:30
【问题描述】:
我正在使用SendMessage() 将BM_CLICK 发送到打开弹出窗口的按钮,然后尝试使用FindWindow() 查找此窗口的ID。当我手动单击按钮或在选择按钮后按 Enter 时,我可以找到窗口 ID,但是当我向按钮发送 BM_CLICK 消息时,我无法找到窗口。我已经设置了一个计时器,以防我太早寻找窗口但没有运气。实际点击和使用BM_CLICK 之间有什么区别会导致这个问题吗?这是我的代码:
Call SendMessage(hist_ID, BM_CLICK, 0, 0)
Sleep 500
hist_window_id = FindWindow("ThunderRT6FormDC", "Select History Data")
timeout = 0
Do While hist_window_id = 0
If timeout < 20 Then
Sleep 50
hist_window_id = FindWindow("ThunderRT6FormDC", "Select History Data")
timeout = timeout + 1
Else
MsgBox "System Timeout"
Exit Function
End If
Loop
【问题讨论】:
-
是的,我只有在使用 BM_CLICK 时才能得到它
-
PostMessage() 有效!感谢您的帮助!
标签: button vb6 controls windows-api-code-pack