最近項目不多忙,于是抽點時間鞏固下切換窗口問題,感興趣的朋友跟著小編一起學習吧!
1、第一個方法比較簡單,也比較萌,是我最近無意間發現的~
public MainFrom_Client(){InitializeComponent();SetMainTreadState();}//先設定主窗體(也就是MainFrom_Client)的透明度和任務欄狀態private void SetMainTreadState(){//這個其實是障眼法!把主窗體(也就是MainFrom_Client)的弄成隱形的,//只需要把Opacity改成就出來了,哈哈哈哈哈哈哈哈this.Opacity = ;//然后在把菜單欄運行的顯示也隱形掉this.ShowInTaskbar = false;}private void ResetMainThreadState(){this.Opacity = ;this.ShowInTaskbar = true;//把當前控件帶到前面來就好了this.BringToFront();}
此時窗體是隱形的,可以隨便重新設定一個函數,等滿足設定的某個特定條件時就調用ResetMainThreadState()函數,這樣主窗體MainFrom_Client就會顯示出來了~
萌萌噠的掩耳盜鈴方式~
2、還有一個就是實打實的窗體調用問題了(查了好久的知識,累死寶寶了T^T)
我的Program.cs文件,先確定最先出現的登錄界面Login_interface()。
static void Main(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Login_interface login_ = new Login_interface();login_.Show();Application.Run();}
一般的Program.cs文件里都是Application.Run(new Login_interface());,這樣最大的問題就是,如果我從登錄界面進入用戶界面,想要關閉登錄界面的話,系統就會自動以為你退出了程序,這樣我就沒辦法進入到用戶界面,此時如果我非要進入用戶界面的話,就可以用類似1的方法,用隱藏等各種方式以此不顯示登錄界面。
這種方法其實不錯,可是我就是有點死性子,所以我一定要關閉登錄界面,所以在Program.cs中設定好了Application.Run();,這樣我后面怎么“虐待”登錄界面,都不會影響程序的繼續使用。
然后就是我的登錄界面的程序了~簡單了吧~
#region 由登陸界面進入到用戶界面private void button_Click(object sender, EventArgs e){if (textBox_UserName.Text == "" && textBox_PassWord.Text == ""){this.Close();User_Panel fm = new User_Panel();fm.Show();}else{MessageBox.Show("用戶名與密碼錯誤,請重新輸入");}}#endregion
以上內容是針對C#切換窗口的相關介紹,希望對大家有所幫助!
新聞熱點
疑難解答