正文

使窗体保持最前2006-03-24 22:20:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/stef/11369.html

分享到:

悬挂窗体(使窗体保持最前)1、在窗体上建立一个复选框,名称:Check1,属性Caption改为“启用悬挂式窗体”写入下面代码Private Sub Check1_Click() Dim res As Long If Check1.Value = 1 Then    res = SetWindowPos(Me.hwnd, HWND_TOPMOST, 0, 0, 0, 0, Flags) Else    res = SetWindowPos(Me.hwnd, HWND_NOTOPMOST, _                        0, 0, 0, 0, Flags)  End IfEnd Sub2、加入一个模块文件,写入下面代码Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long '以上为API函数声明Public Const HWND_TOPMOST = -1Public Const SWP_NOMOVE = &H2Public Const SWP_NOSIZE = &H1Public Const SWP_FRAMECHANGED = &H20'The frame changed: send WM_NCCALCSIZEPublic Const SWP_DRAWFRAME = SWP_FRAMECHANGED'以上为程序中用到的常量 Public Const HWND_BOTTOM = 1Public Const HWND_BROADCAST = &HFFFF&Public Const HWND_DESKTOP = 0Public Const HWND_NOTOPMOST = -2Public Const HWND_TOP = 0Public Const SWP_HIDEWINDOW = &H80Public Const SWP_NOACTIVATE = &H10Public Const SWP_NOCOPYBITS = &H100Public Const SWP_NOOWNERZORDER = &H200'Don't do owner Z orderingPublic Const SWP_NOREDRAW = &H8Public Const SWP_NOREPOSITION = SWP_NOOWNERZORDERPublic Const SWP_NOZORDER = &H4Public Const SWP_SHOWWINDOW = &H40'以上常量声明在程序中没有使用'可以试着在调用SetWindowPos函数时使用这些常量或它们的组合'得到其他效果Public Const Flags = SWP_DRAWFRAME Or SWP_NOMOVE Or SWP_NOSIZE-----------------------------------------------------------------------

阅读(2796) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册