| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 编程论坛
共有 194 人关注过本帖
标题:求教如何让窗体固定在桌面中心,不要移动
只看楼主 加入收藏
bestsunshine
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-7-25
结帖率:0
  问题点数:0  回复次数:7   
求教如何让窗体固定在桌面中心,不要移动

窗体初始位置在桌面中心,但是当鼠标在Picture上移动时(Picture有鼠标移动触发的事件),窗体就会自动跑到桌面左上角(如图),但是我想窗体一直固定在桌面中心。
附件: 您没有浏览附件的权限,请 登录注册
2018-11-23 17:22
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:230
帖 子:4333
专家分:26458
注 册:2008-10-15
  得分:0 
那你只能去排查代码了。
搜索如下代码看看存在不?

me.left
me.top
me.move

窗体名.left
窗体名.top
窗体名.move

甚至
控件名.Container.left
....

排查一下代码。
 

授人于鱼,不如授人于渔
早已停用QQ了
2018-11-23 17:30
bestsunshine
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-7-25
  得分:0 
回复 2楼 风吹过b
您好,我的代码中不存在您说的上述代码
2018-11-23 17:56
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:230
帖 子:4333
专家分:26458
注 册:2008-10-15
  得分:0 
那只把这个窗体的代码发出来大家看看。
没这些代码,不用代码移动窗体,我想不出怎么产生的。

授人于鱼,不如授人于渔
早已停用QQ了
2018-11-23 20:55
ZHRXJR
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:77
帖 子:794
专家分:4152
注 册:2016-5-10
  得分:0 
将带 Picture 控件的窗体的 StartUpPosition 属性设置为 2,不论什么情况下,都会居中的。
除非在 Picture 鼠标移动触发的事件中有 Me.tup = 0 与 Me.Left = 0 的代码。
如果有,将 Me.tup = 0 与 Me.Left = 0 代码删除即可。

[此贴子已经被作者于2018-11-25 08:20编辑过]

2018-11-25 08:08
bestsunshine
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-7-25
  得分:0 
回复 5楼 ZHRXJR
Private Sub Pic_Front_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) '''''''''''显示鼠标所在点的坐标值
    Top = (ScalH - ClipH) / 2
    Bottom = (ScalH + ClipH) / 2
    Left = (ScalW - ClipW) / 2
    Right = (ScalW + ClipW) / 2
    Pic_Front.CurrentX = X
    Pic_Front.CurrentY = Y
    MouseX = (X - Left) / ClipW
    MouseY = (Y - Top) / ClipH
    If MouseX >= 0 And MouseX <= 1 And MouseY >= 0 And MouseY <= 1 Then
        SBar1.Panels(1).Text = "坐标(" + Format(MouseX, "#####0.000") + " " + "," + " " + Format(MouseY, "#####0.000") + ")"
    Else
        SBar1.Panels(1).Text = ""
    End If
End Sub
这个Picture鼠标触发事件的代码,没有窗体位置的代码,窗体的Startupposition值已设成2 ,但是运行时,只要鼠标经过Picture,窗体位置就会移动到桌面左上角。
2018-11-25 15:34
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:230
帖 子:4333
专家分:26458
注 册:2008-10-15
  得分:0 
只能在这些函数里设断点,然后运行看看在哪个函数里跳,然后在哪一句跳。

先所有的响应事件的函数(过程)第一句都下断点。执行,每次都用 F5 继续,看看执行完哪个事件里跳。
然后再针对这个事件里,用F8一步一步的向下,看看在哪句跳。
通过这样的进行排查,光看结果,没代码,没有人能猜出原因,只能靠你自己排查了。


授人于鱼,不如授人于渔
早已停用QQ了
2018-11-25 16:49
wds1
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:30
帖 子:304
专家分:1637
注 册:2016-3-10
  得分:0 
要查原因,最好打包源程序代码及窗体,否则别人不好判断。

2018-11-26 09:24







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022453 second(s), 8 queries.
Copyright©2004-2018, BCCN.NET, All Rights Reserved