簡體   English   中英

如何使一種形式不斷覆蓋另一種形式?

[英]How can I make one form constantly overlaying another form?

我需要form2在form1的頂部,並且具有與form1相同的大小和位置。 特別是當form1的位置更改時。 簡而言之,我如何讓Form2跟隨Form1?

通過在構造函數中或通過Visual Studio中的屬性菜單添加事件處理程序來訂閱form1SizeChanged事件,並在其中更新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;
}

UserControl2Visibile屬性Visibile設置為false

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM