Winform窗體


窗體是winform開發的基礎,需要掌握窗體的創建、屬性、調用和窗體傳值等等。

1、在項目中添加窗體很簡單,在項目上點擊右鍵,選擇添加windows窗體即可為項目添加新的窗體。

2、窗體的屬性設置,右鍵點擊窗體,選擇屬性,VS右側即可看到窗體的屬性,winform所有控件的屬性設置皆可以通過此種方式進行設置。

(1)更改窗體的圖標:在窗體的屬性中有Icon這個屬性,單擊選擇我們要設置的圖片即可。圖片必須是ico文件。可以到EasyICON這個網站上找找,有很多很好的圖標。

(2)隱藏窗體的標題欄:把窗體的屬性FormBorderStyle設為None即可。

  FormBorderStyle的屬性值:

  Fixed3D:固定的三維邊框

  FixedDialog:固定的對話框樣式的粗邊框

  FixedSingle:固定的單行邊框

  FixedToolWindow:不可調整大小的工具窗口邊框

  None:無邊框

  Sizable:可調整大小的邊框

  SizableToolWindow:可調整大小的工具窗口邊框

(3)控制窗口的顯示位置:StartPosition屬性來實現

  CenterParent:窗體在其父窗體中居中

  CenterScreen:窗體在當前顯示窗口中居中,其尺寸在窗體大小中指定

  Manual:窗體的位置由Location屬性確定

  WindowsDefaultBounds:窗體定位在Windows默認位置,邊界由Windows默認決定

  WindowsDefaultLocation:窗體定位在Windows默認位置,其尺寸在窗體大小中指定

(4)修改窗體大小:雙擊Size屬性,有Width和Height兩個屬性,分別設置即可。

(5)設置窗體背景圖片:通過BackgroundImage屬性實現

  打擊打開有兩種選擇:

  選擇本地資源,保存的是圖片的路徑

  選擇項目資源文件,將選擇的文件保存到項目資源文件Resource.resx中,開發中最好導入到資源文件中,這樣軟件在打包的時候也可以打包進去。

(6)窗體的顯示和隱藏:

  顯示:Form form = new Form(); form.Show();

  隱藏:Form form = new Form(); form.Hide();

  首先,Show()和Hide()是非靜態方法,所以我們需要創建窗體對象進行調用。

  其次,使用Hide(),窗體所占用的資源並沒有從內存中釋放掉,而是繼續存儲在內存中,所以我們可以隨時再調用Show()方法進行顯示隱藏的窗體。

  如果我們要關閉當前窗體form.Close()時也關閉所有的隱藏窗體,則:Application.exit();

(7)觸發窗體事件:單擊屬性欄里的閃電圖標就能看到窗體所有的事件。雙擊Click即可創建了窗體的Click事件。

       private void Form_Click(object sender,EventArgs e){}

(8)窗體加載事件(Load),創建過程同,一般情況下我們會使用此方法,在窗體load時加載一些需要的初始信息。

  private void Form_Load(object sender,EventArgs e){}

(9)窗體關閉事件(FormClosing)

  FormClosing事件

  在窗體關閉時,FormClosing事件發生。此事件會得到處理。從而釋放與窗體相關的所有資源。

  如果取消此事件,則窗體仍然保持打開狀態。

  當窗體顯示為模式對話框時,單擊“關閉”會隱藏窗體並將DialogResult屬性設為Cancel。通過在些事件中設置DialogResult屬性可以在用戶單擊右上角關閉按鈕時重寫  DialogResult的值。

  FormClosed事件

  在用戶或Application類的Close方法或Exit方法關閉窗體后,會發生FormClosed事件。

  可以使用此事件釋放窗體的一些資源。還可以使用此事件保存輸入窗體中的一些信息或者更新父窗體。

(10)窗體彈出框

  首先,MessageBox.Show()是彈出框的,類似js的alert

  其次,這個是使用if語句判斷是否單擊了"是"按鈕:

  if(MessageBox("是否查看窗體!","","MessageBoxButton.YesNo,MessageBoxIcon.Information")==DialogResult.OK){}

  也可以這樣:

  DialogResult dr=MessageBox("是否查看窗體!","","MessageBoxButton.YesNo,MessageBoxIcon.Warning");

  dr==DialogResult.YES.......

  MessageBox的具體說明,見下文。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM