【问题标题】:How to remove borders in a sizeable form?如何以相当大的形式删除边框?
【发布时间】:2019-09-10 23:39:12
【问题描述】:

我正在尝试从一个相当大的表单中删除边框。 我试过 FormBorderStyle = None 但这不是我要寻找的,因为它删除了 Aero snap supportAero摇支持等...

我现在拥有的是 没有控制框/标题栏的 WinForm 和面板,因此用户可以在单击面板时移动应用程序。 Application ATM(我希望能够做到这一点,没有 WinForm 边框)。

有没有办法在不破坏 Aero Snap 支持的情况下使表单“无边界”?

【问题讨论】:

  • 让表单的背景透明对你有用吗?
  • 不完全是。目前,我没有将应用程序的背景用于任何事情,但将来我计划在其上添加控件。但是,使背景透明,无论如何都会保持边框。 Example

标签: vb.net forms winforms aero


【解决方案1】:

试试这个。但是在这样做之后,您必须创建用于拖动、最小化和关闭表单的函数。

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Me.ControlBox = False
    Me.Text = ""
End Sub

【讨论】:

  • 就像我说的,我之前尝试过 FormBorderStyle = None,这不是我要寻找的。​​span>
  • 我也说过:“我现在拥有的,是 WinForm 没有控制框/标题栏 [...] ”。您可以查看我发布的图片,这是我已经拥有的..
  • 在我的建议中,将表单加载到此处: Dim p As New Drawing2D.GraphicsPath(): p.AddRectangle(New Rectangle(8, 8, Me.Width - 16, Me.Height - 16 )): Me.Region = 新区域(p)
  • 对不起,如果它不起作用,但如果它可以起作用,请根据需要调整常量 8 和 16,其中 8 是假设边框大小,16 是 2 * 边框大小
  • 另一种方式,当您设置 FormBorderStyle = None 时,您可以使用 System.Windows.Forms.ControlPaint 来绘制标题、最大按钮、最小按钮、关闭按钮和 DrawString 到标题矩形
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-22
相关资源
最近更新 更多