我有一个使用此属性最大化的表单:
Me.WindowState = FormWindowState.Maximized
和FormBorderStyle = None
。这意味着当打开这个表单时,它不能被最小化,这就是我想要的行为。
从这个主窗体中,有一个按钮打开另一个名为“Console”的小窗体,在那里我可以看到主窗体抛出的一些消息。这个“控制台”表单带有FormBorderStyle = FixedSingle
,这意味着可以最小化。
问题在于,当我最小化“控制台”表单时,我无法再次打开,因为主窗体占据了整个屏幕。
我要做的是尽量减少“控制台”,并且能够在我希望的时候再次看到它。
我尝试使用“控制台”表单中的事件,如SizeChanged
或KeyUp
,并在按下最小化按钮时进行控制。
我尝试过的所有事情都出了问题,而且当我按下最小化按钮时,表格通常会最小化。
当我通过点击最小化按钮来最小化表格时,可以看到最小化窗口,以便在我想要时最大化它?
我接受任何建议!
答案 0 :(得分:0)
最后我使用了这个选项:当我点击最小化时,我只需重新定位表单并调整大小。也许是一个简单的手动选项,肯定会有更好的方法,但这给了我现在所需要的。
@HansPassant感谢您的帮助!我将按照您的建议查找有关对接布局管理器的信息。
以下是代码:
Private Sub frmConsole_Move(sender As Object, e As EventArgs) Handles MyBase.Move
If Me.WindowState = FormWindowState.Minimized Then
Me.Size = New System.Drawing.Size(247, 0)
Me.WindowState = FormWindowState.Normal
Me.Location = New Point(padre.GMapControl.Location.X, padre.GMapControl.Location.Y + 1000)
Me.TopMost = True
ElseIf Me.WindowState = FormWindowState.Maximized Then
Me.Size = New System.Drawing.Size(447, 900)
Me.WindowState = FormWindowState.Normal
Me.Location = New Point(padre.Location.X + padre.GMapControl.Width * 0.9, padre.Location.Y)
End If
End Sub
我已经使用了主窗体的某些按钮位置来找到“控制台”。形式,但它可以是任何价值。
谢谢!