[英]How can I make one form constantly overlaying another form?
我需要form2在form1的頂部,並且具有與form1相同的大小和位置。 特別是當form1的位置更改時。 簡而言之,我如何讓Form2跟隨Form1?
通過在構造函數中或通過Visual Studio中的屬性菜單添加事件處理程序來訂閱form1
的SizeChanged
事件,並在其中更新form2
的大小和位置。
要手動添加事件處理程序,請在構造函數中添加以下內容:
this.SizeChanged += new System.EventHandler(this.AlbumChooser_SizeChanged);
(如果您只鍵入this.SizeChanged +=
則this.SizeChanged +=
的其余部分使用Tab鍵兩次,然后將為您創建事件處理程序方法)。 然后,處理程序將如下所示:
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
屬性Visibile
設置為false
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.