【问题标题】:How To Keep A Form On Top Of Others In VB.NET?如何在 VB.NET 中将表单保持在其他表单之上?
【发布时间】:2015-04-17 11:53:59
【问题描述】:

我正在开发一个应用程序,它有一个主窗体和一个包含一些有用工具的浮动窗体。我希望它位于我的主要表单之上。所以我尝试了ToolForm.TopMost = True,但是当我转到另一个应用程序时,它仍然在顶部。如何在我的应用程序中实现它?是应用程序中最简单的形式。

类似于 Visual Studio 中的查找和替换窗口

【问题讨论】:

  • 你为什么不试试me.topmost=true。使用formname.topmost=true 使它在任何其他应用程序之上,所以尝试替代它只会在你的应用程序之上。

标签: vb.net winforms z-order topmost


【解决方案1】:

在浮动窗口上调用Show方法时,可以将主窗体作为所有者窗口传递。例如:

Dim floating As New FloatingForm()
floating.Show(Me)

这将导致浮动窗口始终停留在其所有者窗口的前面,但不会阻止所有者窗口继续可用。

【讨论】:

    【解决方案2】:

    也许你正在寻找这个:

      Dim yourfrmTools As New Form()
      parentForm.AddOwnedForm(yourfrmTools)
      yourfrmTools.Show()
    

    【讨论】:

      【解决方案3】:
      Private Sub CreateMyTopMostForm()
         ' Create lower form to display. 
         Dim bottomForm As New Form()
         ' Display the lower form Maximized to demonstrate effect of TopMost property.
         bottomForm.WindowState = FormWindowState.Maximized
         ' Display the bottom form.
         bottomForm.Show()
         ' Create the top most form. 
         Dim topMostForm As New Form()
         ' Set the size of the form larger than the default size.
         topMostForm.Size = New Size(300, 300)
         ' Set the position of the top most form to center of screen.
         topMostForm.StartPosition = FormStartPosition.CenterScreen
         ' Display the form as top most form.
         topMostForm.TopMost = True
         topMostForm.Show()
      End Sub 'CreateMyTopMostForm
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-07-14
        • 2012-07-28
        • 1970-01-01
        • 1970-01-01
        • 2022-11-28
        • 1970-01-01
        • 2014-12-21
        相关资源
        最近更新 更多