Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在C语言中调整窗口大小时如何保持对象的位置#_C#_Winforms_Resize_Window - Fatal编程技术网

C# 在C语言中调整窗口大小时如何保持对象的位置#

C# 在C语言中调整窗口大小时如何保持对象的位置#,c#,winforms,resize,window,C#,Winforms,Resize,Window,调整窗口大小时,如何使窗口的对象(按钮、标签等)保持在中心位置 目前,我在Windows窗体中有3个按钮。当我最大化窗口时,按钮停留在窗口的左上角。我希望他们在中心,因为他们是当窗口没有最大化 有什么帮助吗?您应该将对象的锚属性设置为无 这将保持在中间。< P>如果您使用VisualStudio的可视化设计器(并且您没有理由不这样做),则您的控件的属性(即,您试图控制如何将它们放置在表单中)是“锚”。 默认情况下,当您创建一个新控件时,它被设置为“左上”,这意味着它们将保持在窗体左上角的固定位置

调整窗口大小时,如何使窗口的对象(按钮、标签等)保持在中心位置

目前,我在Windows窗体中有3个按钮。当我最大化窗口时,按钮停留在窗口的左上角。我希望他们在中心,因为他们是当窗口没有最大化


有什么帮助吗?

您应该将对象的锚属性设置为


这将保持在中间。

< P>如果您使用VisualStudio的可视化设计器(并且您没有理由不这样做),则您的控件的属性(即,您试图控制如何将它们放置在表单中)是“锚”。 默认情况下,当您创建一个新控件时,它被设置为“左上”,这意味着它们将保持在窗体左上角的固定位置。你可以改变这一点,将它们锚定到任何东西上


您还可以通过覆盖窗体的Resize方法来禁用锚定并控制其位置。

正确设置控件的
锚定属性。默认情况下,控件定位到左上方的
。如果清除此属性(基本上锚定为零),按钮将保持居中


(看起来你想锚定到所有四个方面,但实际上,你要做的就是调整你的按钮来填充表格!)

< P>以保持你的布局固定,在中间这样做:

  • 在您的
    表单上
    添加
    表格布局面板
  • 将其
    Dock
    属性设置为
    Fill
  • 创建3行3列
  • 编辑行和列-为第一列和最后一列和行设置50%
  • 设置中间行和列的固定大小
  • 面板
    或任何您喜欢的东西放在第二行和第二列。它总是在中间。

  • 如果不需要,可以禁用“最大化”选项…:)我做到了。谢谢但这并不是调整按钮的大小。当我最大化窗口时,按钮的大小与以前相同。有没有办法使按钮以相同的比例增加大小?如果将
    锚定设置为
    上、左、下、右
    ,则按钮将随着窗体大小的变化而调整大小,但它不会保持与窗体相同的比例(即,它将以与窗体相同的像素数调整大小)。如果要将按钮的大小保持为表单大小的固定百分比,则需要手动编码。除了将对象保持在水平中心外,如果还需要在垂直扩展窗口时将对象保持在屏幕底部,请将锚定设置为“底部”,而不是“无”。