0

我得到了在 Windows 窗体中禁用 x 按钮的答案,但是是否可以完全隐藏/不可见关闭(X)按钮并将最大按钮移动到关闭(x)btn 位置,将最小按钮移动到窗体中的最大按钮位置。无需创建自定义/用户控件/新表单

4

3 回答 3

0

我不相信你可以在不隐藏/移除整个控制框的情况下隐藏它。如果您不想使用按 (x) 按钮,最好的解决方案是禁用它。

于 2013-05-31T12:35:10.480 回答
0

@Andy 是正确的,这是不可能的。这些按钮位于窗口的非客户端区域——这意味着窗口的一部分(或多或少)由 Windows 控制,而不是“托管”在窗口中的程序。请注意,禁用关闭按钮也会禁用 Window 的系统菜单(或控制框菜单)。

您可能想要做的是隐藏所有标题栏按钮并在应用程序表单上创建新按钮,以最小化和最大化应用程序。

但是,我会问你为什么觉得需要移动按钮?如果您必须移动按钮或对其进行不同的设计,我知道趋势科技防病毒等应用程序通过为应用程序窗口提供图像并创建自定义(a/k/a owner-)绘制控件来“皮肤”窗口. 他们还“剥皮”了非客户端区域,有效地设计了他们希望标题栏文本显示的方式/位置、最小化/最大化按钮等。但这需要大量工作,而且通常看起来并不那么完美(在我看来)。另外,人们只是习惯了标准的 Windows 窗体,这就是它“标准”的原因。

要考虑的另一件事是使用 WPF。您基本上可以重新定义 Window 模板,从而更改通常非客户区按钮(例如最小化和最大化按钮)的外观和感觉(和位置)。

于 2013-05-31T12:39:56.033 回答
0

你必须拥有这个东西,

  • 隐藏所有状态栏设置 FormBorderStyle 为无
  • 使用 Dock Top 在表单顶部放置一个面板
  • 创建您需要的按钮(最小化、最大化)
  • 制作抓取表单的面板标题栏制作可移动的无边框表单
于 2013-05-31T12:41:25.630 回答