vb中控制窗体位置

想写个函数,初始时窗体在屏幕左上方,鼠标经过时窗体就变到右下方,再经过又变回左上方.如何实现?... 想写个函数,初始时窗体在屏幕左上方,鼠标经过时窗体就变到右下方,再经过又变回左上方.如何实现? 展开
 我来答
光幻无痕
2007-01-31 · TA获得超过351个赞
知道小有建树答主
回答量:398
采纳率:100%
帮助的人:117万
展开全部
mouse有个确定在视窗窗体(不是程序窗体)中坐标的方法,自己查帮助或通过索引找吧(索引输“窗体”找),我很久前用过。

你可以设定鼠标坐标小于等于二分之一视窗窗体时发生该事件(伪代码 if(mouse.winX<=windows.width/2&&mouse.winY<=windows.height/2){程序窗体移位} 记住不要用绝对值,因为视窗大小可能是800*600也可能是1024*768,所以用“/2”这个相对值)。

同时你必须设一个bool值或int标志,以true和flase或0和1来判断程序窗体是在左上方还是右下方,并区别相隔两次鼠标经过的不同。如果不这样做那它只移一次,就无效了。

没法给你写代码,我做了很久的java程序员,不用VB了。
zdingyun
2007-01-31 · 知道合伙人软件行家
zdingyun
知道合伙人软件行家
采纳数:15429 获赞数:48177
1982年上海业余工业大学化工系毕业 现退休

向TA提问 私信TA
展开全部
楼上提供一种思路,代码如下:

Option Explicit
Dim wz As Boolean ' 声明变量

Private Sub Form_Load()
Me.Height = Screen.Height / 2
Me.Width = Screen.Width / 2
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If wz Then
Move Screen.Width / 2, Screen.Height / 2 ', 2 * Inch, Inch
Else
Me.Move 0, 0
End If
wz = Not wz
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式