4.5 實現 About 對話框
前邊介紹的 SaveDialog 、OpenDialog 和 FontDialog 都是類庫中預先定義的對話框, 本
節介紹如何創建滿足一定要求的自制對話框。對話框其實就是窗體,其基類和主窗體一樣,
是 System.Windows.Forms.Form。 只是一般對話框只有關閉按鈕, 沒有最大化和最小化按鈕,
對話框的邊界是固定的,不能改變。設計自己的對話框是經常遇到的工作。
(16)選擇菜單項項目 / 添加 Windows窗體,彈出對話框,在模板 (T) 編輯框中選擇
Windows窗體,在名稱欄 (N)編輯框中輸入窗體文件名稱: formAbout.cs ,
單擊打開按鈕,可以見到一個新窗體。從文件 formAbout.cs 可以看到新建窗體類名也為 formAbout。
(17)修改 formAbout 屬性 StartPosition=CenterParent ,表示打開對話框時, 對話框在父窗口的中間。
修改屬性 MaximizeBox=False, MinimizeBox=False , 表示沒有最大化和最小化按鈕,既不能最大化和最小化。
屬性 FormBorderStyle=FixedDialog ,窗口不能修改大小。屬性 Text=" 詩詞歌賦"。
可以在窗體中增加各種控件,例如,小圖標, Label控件等。
本例僅增加 Label 控件表示版權信息,其屬性 Text=" 白衣縱馬趁年少 "。一個按鈕,屬性 Text=" 確定",
按鈕單擊事件處理函數如下:
private void button1_Click( object sender,System.EventArgs e)
{Close();}
(18)為 Form1窗體增加頂級菜單項: 幫助,為幫助頂級菜單項彈出菜單增加菜單項: 關於⋯,
屬性 Name為 menuItemAbout。關於⋯菜單項單擊事件處理函數如下:
private void menuItemAbout_Click( object sender, System.EventArgs e)
{
formAbout AboutDialog= new formAbout();
AboutDialog.ShowDialog( this );
}// 注意不能使用 Show()函數
(19)編譯,運行, 單擊關於⋯菜單項, 將出現一個 formAbout對話
框, 並且不關閉此對話框, 不能回到主窗口, 一般把這樣的對話框叫做模式對話框。