从技术上讲,当您发送消息时,您正在抽取句柄引用的控件的消息流。WM_SETREDRAW标志告诉窗口放弃对绘制的调用。“通过”;“假”;防止在调用invalidate rectangle函数时更新句柄引用的控件。因此,您必须始终调用该函数一次以禁用它,再调用一次以启用它。如果你不';t您将无法访问应用程序窗口
您可以尝试将参数作为不同类型传递:
- Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, _
- ByVal wMsg As Long, _
- ByVal wParam As Long, _
- ByVal lParam As Any) As Integer
- Private Const WM_SETREDRAW As Integer = 11
-
- Public Sub LockUpdates(ByVal hWnd As Long, ByVal Redraw As Boolean)
- SendMessage hWnd, WM_SETREDRAW, Redraw, ByVal 0&
- End Sub
作为旁白,你不';如果处理打开的图形,则不必将应用程序窗口传递给函数,只需传递图形的句柄即可
如果要打开然后打印,可能需要禁用整个窗口。 |