c# winform无边框窗体 拖动到屏幕边界

Ljayer 2016-06-04 10:04:16
winfrom窗体在窗体样式属性设置为sizeable,在win7及以上的操作系统下,鼠标拖动窗体移动到屏幕的上方、左右方边界会出现悬挂边框特效,但是当窗体样式设置为none时候就会失去此效果,请问大牛高手们,有没有什么好的解决办法?在窗体属性为none时候拖动到屏幕边界,能重现悬挂特效呢?多谢指教!
...全文
359 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
crystal_lz 2016-06-06
  • 打赏
  • 举报
回复
没边框就自己实现 无边框的在windows就是这样的 有很多看上去无边框的程序 享有这样的功能 并不是 他真的无边框 而是别人直接把窗体的标题栏一起给绘制成了自己想要的效果 所以让你觉得看上去他没有了windows的标题栏 所以让你觉得他把边框去掉了 比如QQ的聊天窗口等 无论自己实现 还是重绘标题栏 都不是简单的活。
Ljayer 2016-06-06
  • 打赏
  • 举报
回复
各位大牛们,给点相关经验,3q
Ljayer 2016-06-06
  • 打赏
  • 举报
回复
引用 5 楼 Ljayer 的回复:
[quote=引用 3 楼 sp1234 的回复:] windows的这个功能本来就不是针对无边框(或者边框固定)的窗口的。就好像地铁是给人开的,你非要让马戏团也上地铁,只能自己挖地铁。
在win7及以上系统自带这种效果是针对有边框窗体,无边框窗体有没有什么间接的方法实现该效果呢?[/quote] 那有没有方法可以把winform窗体的边框给隐藏了呢?
szjay 2016-06-05
  • 打赏
  • 举报
回复
响应Form的MouseDown、MouseMove、MouseUp事件,鼠标按下的时候开始准备移动窗体,鼠标移动的时候修改Form的位置,鼠标放开的时候结束移动
Ljayer 2016-06-05
  • 打赏
  • 举报
回复
引用 3 楼 sp1234 的回复:
windows的这个功能本来就不是针对无边框(或者边框固定)的窗口的。就好像地铁是给人开的,你非要让马戏团也上地铁,只能自己挖地铁。
在win7及以上系统自带这种效果是针对有边框窗体,无边框窗体有没有什么间接的方法实现该效果呢?
  • 打赏
  • 举报
回复
另外,#1 楼的意思是自己来处理“拖动”事件。在winform中没有窗口拖动功能,所以需要自己实现拖动。在wpf中有拖动功能,一条代码就能“允许拖动”。 显然你要做的是监视拖动事件,在拖动时才来判断窗口是否该停靠在windows 桌面边上。而不仅仅是来实现一个拖动。
  • 打赏
  • 举报
回复
windows的这个功能本来就不是针对无边框(或者边框固定)的窗口的。就好像地铁是给人开的,你非要让马戏团也上地铁,只能自己挖地铁。
Ljayer 2016-06-05
  • 打赏
  • 举报
回复
嗯,非常感谢回复,楼上说的是拖动窗体,我可能没有说明白,不是需要移动窗体,现在需要做成win7系统自带的那样鼠标拖动窗口到屏幕边缘出现的时候,屏幕会出现那种透明方框的特效。。。

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧