我怎么能让一个形式不断地覆盖另一个形式
本文关键字:另一个 覆盖 一个 怎么能 | 更新日期: 2023-09-27 18:15:59
我需要form2在form1的顶部,在相同的大小和位置的form1。特别是当form1的位置发生变化时。简单地说,我如何让form2跟随form1?
通过在构造函数中或通过Visual Studio的属性菜单中添加事件处理程序来订阅form1
的SizeChanged
事件,并在其中更新form2
的大小和位置。
this.SizeChanged += new System.EventHandler(this.AlbumChooser_SizeChanged);
(如果您只键入this.SizeChanged +=
,那么在剩下的行中键入两次制表符,事件处理程序方法将为您创建)。然后处理程序看起来像这样:
private void AlbumChooser_SizeChanged(object sender, EventArgs e)
{
form2.Location = new Point(this.Location);
....
}
您可能还需要订阅ResizeEnd
事件
看起来你正在寻找错误的解决方案。我要做的是创建2个用户控件,一个用于当前的Form1
,一个用于当前的Form2
。
将滚动文本放在UserControl1
中,将Image
放在UserControl2
中。
将这两个用户控件添加到一个表单中,它们重叠,并更改用户控件的可见性,而不是创建新表单。当交换:
private void SwapVisibility() {
UserControl1.Visible = !UserControl1.Visible;
UserControl2.Visible = !UserControl2.Visible;
}
初始化UserControl2
的Visibile
属性为false