以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 无边框窗体如何实现点击任务栏图标正常最小化或还原窗体? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=106606) |
||||
-- 作者:Hopenight -- 发布时间:2017/9/12 15:28:00 -- 无边框窗体如何实现点击任务栏图标正常最小化或还原窗体? 我用一个模态窗口做主窗体,而且将这个模态窗口设置为了无边框。 请问一下,如何实现点击任务栏图标正常最小化或还原窗体? 我在百度上找到了针对常规的WinForm程序,相应的解决方案。 https://zhidao.baidu.com/question/623853421877827564.html 可是不知道怎样将该方法使用到狐表的Form上。请各位高手指教...
|
||||
-- 作者:有点甜 -- 发布时间:2017/9/12 16:05:00 -- 参考
|
||||
-- 作者:Hopenight -- 发布时间:2017/9/12 16:31:00 -- 这个我已经看过了,还是没有头绪啊 |
||||
-- 作者:有点甜 -- 发布时间:2017/9/12 17:41:00 -- 全局代码
<DllImport("user32.dll", EntryPoint := "GetWindowLong", CharSet := CharSet.Auto)> _
Public Function GetWindowLong(hWnd As HandleRef, nIndex As Integer) As Integer
End Function
<DllImport("user32.dll", EntryPoint := "SetWindowLong", CharSet := CharSet.Auto)> _
Public Function SetWindowLong(hWnd As HandleRef, nIndex As Integer, dwNewLong As Integer) As IntPtr
End Function 窗口afterload代码
Dim WS_SYSMENU As Integer = &H00080000
Dim Min As Integer = &H00020000
Dim windowLong As Integer = GetWindowLong(new HandleRef(e.Form.Baseform, e.Form.Baseform.Handle), -16)
SetWindowLong(new HandleRef(e.Form.Baseform, e.Form.Baseform.Handle), -16, windowLong Or WS_SYSMENU Or min) |
||||
-- 作者:Hopenight -- 发布时间:2017/9/13 10:42:00 -- 果然好用,感谢 |