版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、1,本章教學目標,菜單控件(MenuStrip) 上下文菜單控件(ContextMenuStrip) 工具欄控件(ToolStrip) 狀態(tài)欄控件(StatusStrip) 打開文件對話框(OpenFileDialog) 保存文件對話框(SaveFileDialog) 字體對話框(FontDialog) 顏色對話框(ColorDialog),8.1 菜單,8.1.1 菜單選項與分隔條,菜單項的設(shè)置 分隔條(separator),8.1.2 訪問鍵和快捷鍵,訪問鍵(access key) Alt + key 快捷鍵(shortcut key) Ctrl + key Shift + key,實例8
2、.1,例8.1創(chuàng)建一個菜單驅(qū)動,能實現(xiàn)最簡單文字編輯功能的記事本程序,例8.1 程序代碼(1),using System; using System.Text; using System.Windows.Forms; using System.IO; /執(zhí)行文件操作,必須引用這個命名空間 namespace ex801 public partial class Form1 : Form public Form1() InitializeComponent(); private void menuFileNew_Click(object sender, EventArgs e) File.Cre
3、ate(d:test1.rtf); MessageBox.Show(名為1.rtf的文件創(chuàng)建成功,創(chuàng)建文件); ,例8.1 程序代碼(2),private void menuFileOpen_Click(object sender, EventArgs e)/打開文件 richTextBox1.LoadFile(d:test2.rtf, RichTextBoxStreamType.RichText); private void menuFileSave_Click(object sender, EventArgs e)/保存文件 richTextBox1.SaveFile(d:test3.rt
4、f); MessageBox.Show(名為3.rtf的文件保存成功, 保存文件); private void menuFileExit_Click(object sender, EventArgs e)/退出運行 this.Close(); /結(jié)束程序,退出運行 ,例8.1 程序代碼(3),private void menuEditUndo_Click(object sender, EventArgs e) /撤消 if (richTextBox1.CanUndo = true) richTextBox1.Undo(); /撤消在RichTextBox中所做的修改 else MessageB
5、ox.Show(無法撤消); private void menuEditCut_Click(object sender, EventArgs e) /剪切 richTextBox1.Cut(); /將文本框中被選中的文字移動到剪貼板 private void menuEditCopy_Click(object sender, EventArgs e) /復制 richTextBox1.Copy(); /將文本框中被選中的文字復制到剪貼板 private void menuEditPaste_Click(object sender, EventArgs e)/粘貼 richTextBox1.Pa
6、ste(); /將剪貼板中的內(nèi)容粘貼到文本框 ,例8.1 程序代碼(4),private void menuEditFind_Click(object sender, EventArgs e) /查找 /查找到第一個“迪斯尼”并將其選中 int position = richTextBox1.Text.IndexOf(迪斯尼); if (position = 0) richTextBox1.Select(position, 3); private void menuEditReplace_Click(object sender, EventArgs e) /替換 /將所有的“迪斯尼”替換為“D
7、isney” string str1 = richTextBox1.SelectedText; richTextBox1.SelectedText = str1.Replace(迪斯尼, Disney); ,例8.1 程序代碼(5),private void menuFormatFont_Click(object sender, EventArgs e) /字體 richTextBox1.SelectionFont = new Font(隸書, 24, FontStyle.Bold); /設(shè)置字體 private void menuFormatColor_Click(object sender
8、, EventArgs e) /顏色 /設(shè)置被選中的文字為紅色 richTextBox1.SelectionColor = Color.Red; private void menuHelpAbout_Click(object sender, EventArgs e) /關(guān)于作者 MessageBox.Show(我是重慶大學教務(wù)處趙品勇,歡迎與我聯(lián)系,作者自我介紹); ,程序存在的問題?,功能極其有限 “打開”只能打開名為“2.RTF”的文件 “替換”只能將“迪斯尼”替換成“Disney” “顏色”只能把被選中的文字設(shè)置為紅色 要實現(xiàn)良好的交互功能,最好使用對話框(dialog)組件,8.1.3
9、 上下文菜單控件(ContextMenuStrip),設(shè)置控件的ContextMenuStrip屬性,上下文菜單屬于窗體上的特定對象,每個對象只能有一個與之相關(guān)聯(lián)的上下文菜單。將指定對象的ContextMenu屬性設(shè)置為添加到窗體的一個ContextMenuStrip控件名稱,就建立了二者的關(guān)聯(lián),實例8.2,例8.2 設(shè)計一個用來改變圖片框背景顏色的上下文菜單。,例8.2 代碼,using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.
10、Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace ex802 public partial class Form1 : Form public Form1() InitializeComponent(); private void menuColorRed_Click(object sender, EventArgs e) pictureBox1.BackColor = Color.Red; ,例8.2 代碼,private void menuColorGreenripMen
11、uItem_Click(object sender, EventArgs e) pictureBox1.BackColor = Color.Green; /圖片框背景為綠色 private void menuColorBlue_Click(object sender, EventArgs e) pictureBox1.BackColor = Color.Blue; /圖片框背景為藍色 private void menuColorPurple_Click(object sender, EventArgs e) pictureBox1.BackColor = Color.Purple; /圖片框背
12、景為紫色 ,例8.2 代碼,private void menuColorYellow_Click(object sender, EventArgs e) pictureBox1.BackColor = Color.Yellow; /圖片框背景為黃色 private void menuColorWhite_Click(object sender, EventArgs e) pictureBox1.BackColor = Color.White; /圖片框背景為白色 ,8.2 工具欄和狀態(tài)欄,8.2.1 工具欄控件,8.2.2 狀態(tài)欄控件,實例8.3,例8.3 創(chuàng)建一個工具欄驅(qū)動,能實現(xiàn)最簡單的文
13、字編輯功能,并能在狀態(tài)欄顯示狀態(tài)信息的記事本程序。,例8.3 代碼,using System; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; /涉及文件操作,必須引用命名空間System.IO namespace ex703 public partial class Form1 : Form public Form1() InitializeComponent(); string myfontFamily; /這兩個變量必須在各事件過程的前面定義 int myfontS
14、ize; private void toolStripNew_Click(object sender, EventArgs e) File.Create(d:test1.rtf); toolStatus2.Text = 名為1.rtf的文件創(chuàng)建成功; ,8.3 對話框,打開文件對話框(OpenFileDialog) 保存文件對話框(SaveFileDialog) 字體對話框(FontDialog) 顏色對話框(ColorDialog),8.3.1 打開文件對話框(OpenFileDialog),8.3.1 打開文件對話框(OpenFileDialog),常用屬性: FileName 設(shè)置初始打
15、開的文件名 InitialDirectory 設(shè)置初始打開的文件目錄 Filter 設(shè)置在 “文件類型” 中顯示的文件過濾器,指定允許在列表框中顯示的文件類型: Dialog1.Filter = 文本文件|*.txt|RTF文件|*.rtf|所有文件|*.*; FilterIndex 設(shè)置默認的文件過濾器,屬性值為整數(shù),表示Filter屬性中各個選項的序號,8.3.2 保存文件對話框(SaveFileDialog ),OpenFileDialog的常用屬性和方法,實例8.4,例8.4 創(chuàng)建一個菜單驅(qū)動,運用對話框?qū)崿F(xiàn)以交互方式創(chuàng)建、打開和保存文件,并能在狀態(tài)欄顯示狀態(tài)信息的簡單記事本程序。,實
16、例8.4代碼(1),private void Form1_Load(object sender, EventArgs e) openFileDialog1.FileName = ; /設(shè)置默認的初始打開文件名為空字符串 openFileDialog1.InitialDirectory = F:C#; /設(shè)置文件操作的初始目錄 openFileDialog1.Filter = 文本文件|*.txt|RTF文件|*.rtf|所有文件|*.*; openFileDialog1.FilterIndex = 2; /把篩選器中的第二項設(shè)置為默認值 saveFileDialog1.Filter = 文本文
17、件|*.txt|RTF文件|*.rtf|所有文件|*.*; saveFileDialog1.FilterIndex = 2; toolStatus1.Text = 當前系統(tǒng)日期: + DateTime.Now.ToShortDateString(); ,實例8.4代碼(2),private void menuFileNew_Click(object sender, EventArgs e) /將保存文件對話框的標題設(shè)置為“新建” saveFileDialog1.Title = 新建; DialogResult myresult = saveFileDialog1.ShowDialog(); /
18、測試用戶是否執(zhí)行了有效的新建操作 if (myresult = DialogResult.OK) /按從對話框獲得的文件名創(chuàng)建新文件 File.Create(saveFileDialog1.FileName); toolStatus2.Text = saveFileDialog1.FileName + 文件創(chuàng)建成功; ,實例8.4代碼(3),private void menuFileOpen_Click(object sender, EventArgs e) /打開對話框并獲取返回值 DialogResult myresult = openFileDialog1.ShowDialog(); /
19、測試用戶是否執(zhí)行了有效的打開操作 if (myresult = DialogResult.OK) richTextBox1.LoadFile(openFileDialog1.FileName); ,實例8.4代碼(4),private void menuFileSave_Click(object sender, EventArgs e) /打開對話框并獲取返回值 DialogResult myresult = saveFileDialog1.ShowDialog(); /測試用戶是否執(zhí)行了有效的保存操作 if (myresult = DialogResult.OK) /按從對話框獲得的文件名保
20、存文件 richTextBox1.SaveFile(openFileDialog1.FileName); toolStatus2.Text = openFileDialog1.FileName + 文件保存成功; ,8.3.3 字體對話框,8.3.4 顏色對話框(ColorDialog),實例8.5,例8.5 創(chuàng)建一個菜單驅(qū)動,運用對話框?qū)崿F(xiàn)以交互方式設(shè)置被選中文字的字體和顏色的簡單記事本程序。,例8.5 代碼,private void menuFormatFont_Click(object sender, EventArgs e) fontDialog1.ShowApply = true; /允許顯示“應(yīng)用”按鈕 fontDialog1.ShowColor = true; /允許顯示“顏色”下拉列表 fontDia
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 臨汾2025年山西臨汾市洪洞縣引進急需緊缺高層次人才67人筆試歷年參考題庫附帶答案詳解
- 東莞2025年廣東東莞鳳崗鎮(zhèn)招聘公辦中小學臨聘教師13人筆試歷年參考題庫附帶答案詳解
- 上海2025年上海交響樂團招聘筆試歷年參考題庫附帶答案詳解
- 2026秋季北京水電水利規(guī)劃設(shè)計總院有限公司招聘10人筆試參考題庫附帶答案詳解(3卷)
- 2026中國電科11所校園招聘筆試參考題庫附帶答案詳解(3卷)
- 2025黑龍江省水利水電集團校園招聘120人筆試歷年參考題庫附帶答案詳解
- 2025陜西楊凌農(nóng)科集團有限公司招聘(10人)筆試參考題庫附帶答案詳解(3卷)
- 2026重慶輪船(集團)有限公司交運游輪分公司三峽游輪船員招聘7人筆試參考題庫附帶答案詳解
- 化妝品銷售后的培訓課件
- 靜脈曲張患者疼痛護理管理
- GB/T 43590.506-2025激光顯示器件第5-6部分:投影屏幕光學性能測試方法
- 電工職業(yè)衛(wèi)生試題及答案
- 五年級第一學期勞動課教學計劃和總結(jié)
- 《骨及關(guān)節(jié)疾病》課件
- QES三體系建筑施工企業(yè)管理手冊(含50430)
- 物業(yè)管理技巧與經(jīng)驗分享
- 如何高效向GPT提問
- GB/T 44179-2024交流電壓高于1 000 V和直流電壓高于1 500 V的變電站用空心支柱復合絕緣子定義、試驗方法和接收準則
- 德漢翻譯入門智慧樹知到期末考試答案章節(jié)答案2024年中國海洋大學
- 入股到別人私人名下協(xié)議書
- MT-T 1199-2023 煤礦用防爆柴油機無軌膠輪運輸車輛安全技術(shù)條件
評論
0/150
提交評論