首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

关于“拖拉时显示窗口内容”,该如何处理

2012-01-24 
关于“拖拉时显示窗口内容”电脑属性-高级-设置-视觉效果中中取消拖拉时显示窗口内容这个选项之后(就

关于“拖拉时显示窗口内容”
电脑属性->高级->设置->视觉效果中"中取消"拖拉时显示窗口内容"这个选项之后(就是不打钩),用鼠标改变窗口大小的时候(按下左键,拖拉,松开左键之前),显示的是一个虚框,当松开左键的时候,窗口才显示出调整后的大小。

现在需要做到的是,即使上述"拖拉时显示窗口内容"这项是选中的,也让自己程序的窗体达到上述效果。

请各位出出注意,谈谈看法。谢谢。

[解决办法]
用api把这个钩去掉是否违规?
[解决办法]
不知道 Hook消息处理 行不。

[解决办法]
路过,帮顶吧
[解决办法]
帮顶
[解决办法]
在拖动之前,先把欲拖动方向抓屏,拖动使窗口拉伸时,在RESIZE事件中根据是否拖拽完成的标识决定是否重新定位,并将多出的窗口部分拷贝成该部分对应的图像。当拖拽完成,再进行控件的重定位。
[解决办法]
http://topic.csdn.net/u/20091202/13/66015bdf-6b87-4268-8e9d-dccf45f7ae52.html#replyachor

看老马回复的代码

Dim mX As Long, mY As Long
  
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button And vbLeftButton Then
mX = X: mY = Y
End If
End Sub
  
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button And vbLeftButton Then
Me.Move Me.Left - mX + X, Me.Top - mY + Y
End If
End Sub
[解决办法]
貌似在什么地方看到过类似的问题,要使用API
[解决办法]

探讨
.......

回2楼,现在就是不清楚应该处理哪些消息

[解决办法]
这个..........好说啊,技术简单,代码烦人,要写一堆......

简单来说,就是锁定窗体大小,不让更改,这样系统的实时重绘就无效了;

然后子类化拦截鼠标按下与抬起消息,再在这个过程中用DrawMutiRect自绘虚线框.............

效果是一样的啦~~~~~~嘿嘿.

本来这个代码我是上传到我站上的,但现在被伟大的GOV因为我是个人网站而封了IP,现在只有我发给你了......

留个MAIL吧.

应该有些朋友是看过这代码的,叫"完美自定义窗体".

我将在心中深深地,永久地BS封我站的垃圾.

网络文字狱啊!!!!!!!!!!!!!!!!

热点排行