以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请问如何实现无边框窗口鼠标移动?(已解决)  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=17840)

--  作者:xiaoqiwei
--  发布时间:2012/3/26 17:20:00
--  请问如何实现无边框窗口鼠标移动?(已解决)

请问如何实现无边框窗口鼠标移动?

代码应该怎么写呢?

[此贴子已经被作者于2012-3-26 18:25:46编辑过]

--  作者:狐狸爸爸
--  发布时间:2012/3/26 17:31:00
--  

什么意思?


--  作者:狐来狐去
--  发布时间:2012/3/26 17:37:00
--  
就是实现无边框的窗口。鼠标拖动窗口吧。。无力。只能帮顶了~~
--  作者:xiaoqiwei
--  发布时间:2012/3/26 17:40:00
--  

我这窗口是就是无边框的,但是移动不了,我想移动,请问老大如何实现?

 


图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看


--  作者:程兴刚
--  发布时间:2012/3/26 21:50:00
--  

得到楼主的代码,效果很不错,搜索本论坛,没有搜索到类似的代码,在这里共享一下:

 

全局代码:

 

Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Integer,ByVal wMsg As Integer, ByVal wParam As Integer, lParam As Integer) As Integer
Private Const WM_NCLBUTTONDOWN = &HA1
Private Const HTCAPTION = 2
Public Sub Panel_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs)
If e.Button=MouseButtons.Left Then
    ReleaseCapture()
    SendMessage(sender.Parent.Handle.ToInt32, WM_NCLBUTTONDOWN, HTCAPTION, 0)
End If
End Sub

 

 

AfterLoad 事件代码:

 

e.form.BaseForm.FormBorderStyle = Windows.Forms.FormBorderStyle.None
AddHandler e.Form.Panel.MouseDown,AddressOf Panel_MouseDown

[此贴子已经被作者于2012-3-26 22:22:20编辑过]

--  作者:Gryvip
--  发布时间:2012/3/27 21:12:00
--  
虽然看不明白,还是要顶
--  作者:35844985
--  发布时间:2012/8/12 11:29:00
--  
我也在找这个,能不能给做个实例学习下
--  作者:35844985
--  发布时间:2012/8/12 11:32:00
--  
老大你是怎么解决的 给个实例例看看行么
--  作者:bahamute
--  发布时间:2013/4/11 13:36:00
--  
使用无边框代码后,打开项目提示错误: 



 
图片点击可在新窗口打开查看此主题相关图片如下:剪辑_02301245782.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2013-4-11 13:38:27编辑过]

--  作者:gsnake
--  发布时间:2013/4/11 21:09:00
--  
模式窗口啊