【发布时间】:2016-01-26 12:33:52
【问题描述】:
在加载事件中,我设置了左侧和顶部位置。发生的事情是表单显示在默认位置,然后转到我手动设置的位置。所以它在一个位置闪烁,然后立即进入手动设置。 (希望这是有道理的。如果我需要提供更多信息,请告诉我)
Dim rkCurrentUser As RegistryKey = Registry.CurrentUser
If rkCurrentUser IsNot Nothing Then
Dim rkTest As RegistryKey = rkCurrentUser.OpenSubKey("My Secret Life")
If rkTest IsNot Nothing Then
regKey = Registry.CurrentUser.CreateSubKey("My Secret Life")
Dim myLeft As Integer = 0
myLeft = regKey.GetValue("frmMainLeft", myLeft)
Dim myTop As Integer = 0
myTop = regKey.GetValue("frmMainTop", myTop)
Dim myMinutes As Integer = 0
myMinutes = regKey.GetValue("waitMinutes", myMinutes)
Me.Top = myTop
Me.Left = myLeft
regKey.Close()
rkTest.Close()
rkCurrentUser.Close()
End If
Else
MsgBox("Key doesn't exist")
regKey = Registry.CurrentUser.CreateSubKey("My Secret Life")
regKey.SetValue("waitMinutes", 0)
regKey.SetValue("frmMainLeft", Me.Left)
regKey.SetValue("frmMainTop", Me.Top)
regKey.Close()
End If
rkCurrentUser.Close(
感谢您的帮助...另外我知道最后一个字符已被删除。
【问题讨论】:
-
您的
StartPosition设置为什么? -
当您移除注册表加载内容并将 Top,Left 设置为任何值时,它是否也会闪烁?
-
我猜您的表单总是会在不同位置之间闪烁。如果您希望它从某个位置开始,您需要编辑 StartPosition 属性。否则,您可以将其可见性设置为 FALSE,并在所有 FormLoad 结束时以编程方式将其设置为 TRUE。
-
好的...我会检查这些并告诉你
-
抱歉拖了这么久。我从别人那里继承了这个项目,所以代码对我来说是新的。 Form1 不是启动页面,并且会出现一个皮肤窗口。当我将 visible 属性更改为 false 时,它在视觉上会做一些很奇怪的事情并失去它的皮肤。