2012-03-06 59 views

回答

11

要设置“总在最前面,“从您的菜单选项中设置myForm.TopMost = True。请参阅Form.TopMost documentation

要再次取消设置,请设置myForm.TopMost = False

+0

Ahh我发现了这个问题......我必须启用CheckOnClick属性来保持always on top选项 – 2012-03-06 23:06:47

6

要切换Form是否为TopMost,只需更改属性Form.TopMost

例如,设置形式来放在上面,用这个:

Form.TopMost = True 

要禁用TopMost,使用此:

Form.TopMost = False 
+0

这段代码只是使一个“总是在最上面”。我想让用户选择总是打开和关闭。 – 2012-03-06 22:48:37

+0

@Tyler Malo要再次关闭它,请调用'TopMost = False;'。 – rob05c 2012-03-06 22:49:27

0

它可以是:

Me.TopMost = true 

false

3

这是我用来处理事件,如果你想它的用户驱动。当然,您显然想创建一个名为chkAlwaysOnTop的复选框。它也可以很容易地存储在用户设置中,以保持实例之间的状态感知。

Private Sub chkAlwaysOnTop_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles chkAlwaysOnTop.CheckedChanged 
    Me.TopMost = chkAlwaysOnTop.Checked    
End Sub 

你会在你的程序,如果你想保存所述状态的用户希望得到以下

Private Sub MainActivity_FormClosing(sender As Object, e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing 
    My.Settings.AlwaysOnTop = chkAlwaysOnTop.Checked 
    My.Settings.Save() 
End Sub 

您还需要这个表单中的负荷:

Me.TopMost = My.Settings.AlwaysOnTop 
chkAlwaysOnTop.Checked = My.Settings.AlwaysOnTop 

如果你对我使用它的东西感兴趣,它在这里:Rubber Stamp(包括源代码链接)