




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第4章仿Windows記事本共三十三頁22記事本功能分析文件(wnjin)的讀寫StreamReader/StreamWriter通用對話框設計文件的編輯(復制、粘貼、剪貼)文本的查找與替換共三十三頁33計算器外觀設計共三十三頁界面設計MenuStrip控件LayoutStyle: Flow;可隨容器的大小發(fā)生改變菜單項ShortcutKeys: 設置快捷鍵ShortcutKeyDisplayStringEnabled: 設置菜單項是否(sh fu)可用Name:設置菜單項的名字Text:菜單項上顯示的文本共三十三頁界面設計RichTextBox控件Dock:Fill;隨容器的大小而改變自身大
2、小Modified:設置或判斷控件中的內容是否被修改Selected:獲取或設置選定(xun dn)文本Font:獲取或設置字體共三十三頁66菜單項共三十三頁文件(wnjin)的讀、寫操作共三十三頁文件(wnjin)和流System.IO命名空間提供了操作文件與目錄的類文件的讀取需要用流(stream)來進行操作流就是C#中讀寫文件的通道(tngdo)程序通過輸入流從數據源讀取數據,通過輸出流向目的地寫數據。數據源(文件、鍵盤、內存)C#程序數據目的(文件、控制臺、內存)輸入流輸出流共三十三頁System.IO.StreamWriter 寫文件(wnjin)StreamWriter sw =
3、new StreamWriter(“c:testfile.txt”, true, System.Text.Encoding.Default);/第一個參數為文件名,第二個參數判斷是否覆蓋(fgi)已有/文件 ,第三個參數為編碼方式sw.WriteLine(測試數據1);sw.WriteLine(測試數據2);sw.Write(測試數據3測試數據3測試數據3+ 測試數據3測試數據3測試數據3測試數據3+ 測試數據3測試數據3測試數據3測試數據3);sw.Close(); 共三十三頁System.IO.StreamReader 讀文件(wnjin)StreamReader sr = new Str
4、eamReader(“c:testfile.txt”, System.Text.Encoding.Default);MessageBox.Show(sr.ReadLine();MessageBox.Show(sr.ReadToEnd();sr.Close();共三十三頁通用(tngyng)對話框設計共三十三頁通用(tngyng)對話框概述在.NET框架中,提供了以下對話框類:打開文件(wnjin)對話框(OpenFileDialog)保存文件對話框(SaveFileDialog)字體對話框(FontDialog)顏色對話框(ColorDialog)頁面設置對話框(PageSetupDialog
5、)打印對話框(PrintDialog)等類。共三十三頁通用(tngyng)對話框的使用方法首先聲明一個通用對話框,設置一些必要屬性調用(dioyng)ShowDialog()方法打開對話框接收用戶與對話框交互操作的返回值,返回值是DialogResult實例OpenFileDialog dlg = new OpenFileDialog();dlg.Filter = 文本文件(*.txt)|*.txt|所有文件(*.*)|*.*;dlg.Title = 打開文件;if (dlg.ShowDialog() = DialogResult.OK) /顯示打開文件對話框 string _fileName
6、=dlg.FileName; 共三十三頁OpenFileDialog控件常用屬性說明FileName獲取或設置用戶在打開文件對話框中選擇的文件名Filter設置文件篩選過濾器,用于指定對話框中文件類型Multiselect設置是否允許選擇多個文件FileNames只讀屬性,獲取用戶選擇的多個文件名OpenFileDialog控件本身并不能打開文件,如要顯示文件可以通過創(chuàng)建StreamReader對象(duxing)來讀取文件內容。共三十三頁OpenFileDialog odlg = new OpenFileDialog();odlg.Filter = 文本文件(*.txt)|*.txt|所有文
7、件(*.*)|*.*; odlg.Title = 打開(d ki)文件; if (odlg.ShowDialog() = DialogResult.OK) /顯示打開文件對話框 StreamReader sr = new StreamReader(odlg.FileName ,Encoding .Default ); rtxtContent.Text = sr.ReadToEnd(); sr.Close();共三十三頁SaveFileDialog控件常用屬性說明FileName獲取或設置用戶在保存文件對話框中選擇的文件名Filter設置文件篩選過濾器,用于指定對話框中文件類型AddExtens
8、ion設置在省略擴展名時,是否自動將擴展名添加到文件名上DefaultExt默認的文件擴展名SaveFileDialog控件本身并不能保存(bocn)文件,如要寫文件可以通過創(chuàng)建StreamWriter對象來實現。共三十三頁SaveFileDialog sdlg = new SaveFileDialog();sdlg.Filter = 文本文件(*.txt)|*.txt|所有文件(wnjin)(*.*)|*.*; sdlg.Title = “保存文件;Sdlg.AddExtension=true;Sdlg.DefaultExt=“.txt”; if (sdlg.ShowDialog() = D
9、ialogResult.OK) /顯示保存文件對話框 StreamWriter sw = new StreamWriter(sdlg .FileName ,true,Encoding .Default ); sw.Write (rtxtContent.Text); sw.Close();共三十三頁FontDialog控件用于設置文本(wnbn)字體,可以改變字體、字號、字形、顏色等。共三十三頁常用屬性說明Font獲取或設置選定的字體ShowColor是否顯示顏色選項,默認為不顯示ShowEffects是否包含特殊效果選項,如刪除線,下劃線等,默認為顯示 private void mnuFont
10、_Click(object sender, EventArgs e) /修改(xigi)字體 FontDialog fontDialog1 = new FontDialog(); fontDialog1.ShowColor =true ; if (fontDialog1.ShowDialog() = DialogResult.OK) rtxtContent.Font = fontDialog1.Font; 共三十三頁記事本功能(gngnng)實現共三十三頁實現(shxin):另存為分析:一、文件(wnjin)菜單“另存為”的單擊事件:設置saveFileDialog1的屬性;創(chuàng)建StreamW
11、riter對象,取名為sw1, 使用sw1將rtxtContent中的內容寫入到指定的文件中;設置rtxtContent.Modified=false;設置_filename字段;關閉sw1對象在記事本窗體中設置字段或聲明對象:添加一個變量_filename,用來保存文件名;聲明一個SaveFileDialog類控件,取名為saveFileDialog1共三十三頁實現(shxin):保存分析:(以下內容均在“保存”菜單項的單擊事件中實現)一、文件(wnjin)菜單創(chuàng)建StreamWriter對象,將修改過的內容保存到現有文件中 判斷:文件是否存在(已保存過)調用“另存為”的功能代碼 是否共三十
12、三頁實現:新建分析(fnx)(以下內容均在“新建”菜單項的單擊事件中實現)一、文件(wnjin)菜單判斷:rtxtContent中是否有修改后未作的內容,條件為真:彈擊消息框,提示是否需要保存Yes:調用“保存”功能No:不作任何操作Cancel:設置 _isContinue=false添加一個標志:bool _isContinuetrue;判斷:_isContinue,條件為真:將rtxtContent清空;設置 form1.Text=新建文本文檔_記事本;設置 _filename=“”;共三十三頁實現:打開(d ki)分析(以下內容均在“打開”菜單項的單擊事件中實現)一、文件(wnjin)
13、菜單判斷:rtxtContent中是否有修改后未作的內容,條件為真:彈擊消息框,提示是否需要保存Yes:調用“保存”功能No:不作任何操作Cancel:設置 _isContinue=false添加一個標志:bool _isContinuetrue;判斷:_isContinue,條件為真:聲明一個OpenFileDialog控件創(chuàng)建一個StreamReader類對象將指定的文件顯示出來共三十三頁二、編輯(binj)菜單實現(shxin):剪切,復制,粘貼,刪除,撤銷,全選分析:RichTextBox的常用屬性和方法常用屬性說明Select()選擇文本SelectAll()選擇所有內容Cut()將
14、選擇的內容剪切至剪貼板Copy()將選擇的內容復制至剪貼板Paste()將剪貼板中的內容粘貼至光標處Undo()撤銷ClearUndo()消除最近的撤銷信息SelectionLength選擇內容的長度SelectedText選擇的文本共三十三頁當“編輯”菜單(ci dn)的Click事件和DropDownOpened事件發(fā)生時,判斷“編輯”菜單下的各二級菜單項是否可用。rtxtContent.Modified撤銷(chxio)rtxtContent.SelectedTextrtxtContent.Text剪切、復制、刪除Clipboard.GetText().ToString()查找、替換粘貼
15、二、編輯菜單共三十三頁三、查找(ch zho)與替換創(chuàng)建用戶自定義對話框對話框與窗口的不同(b tn)主要體現在對話框不能調整大小。因此將窗體設置成對話框,需設置窗體的幾個屬性。常用屬性說明FormBorderStyle提示窗體的邊框和標題欄的外觀和行為MaximizeBox確定窗體標題欄是否有最大化框MinimizeBox確定窗體標題欄是否有最小化框StartPosition確定窗體第一次出現時的位置AcceptButton設置窗體的“接受”按鈕,用戶按“Enter“鍵,都相當于單擊該按鈕共三十三頁1. 實現(shxin):查找三、查找(ch zho)與替換關鍵技術:富文本框的Find()方
16、法 rtxtContent.Find(searchString); rtxtContent.Find(searchString,searchPosition, RichTextBoxFinds.MatchCase);富文本框的Select()方法rtxtContent.Select(startPosition, selectLength);共三十三頁/添加兩個(lin )成員字段 int _findPosition=0; string _findString=“”; private void mnuFind_Click(object sender, EventArgs e) frmFind f
17、rmFind1 = new frmFind(); if (frmFind1.ShowDialog() = DialogResult.OK) _findString = frmFind1.strFind; Find(); /調用Find()方法進行(jnxng)查找 共三十三頁public void Find() /查找方法 _findPosition = rtxtContent.Find(_findString ,_findPosition,RichTextBoxFinds.MatchCase ); if (_findPosition = -1)/表示(biosh)未找到 MessageBox
18、.Show(找不到 + _findString, 記事本, MessageBoxButtons.OK, MessageBoxIcon.Information); _findPosition = 0; else rtxtContent.Select(_findPosition, _findString.Length); _findPosition += _findString.Length; 共三十三頁2. 實現(shxin):替換三、查找(ch zho)與替換關鍵技術:用到字符串的Replace()方法,對選定的內容進行查找替換。string1.Replace(searchString,replaceString)共三十三頁32總結(zngji)WinForms可用于 Windows 窗體應用程序開發(fā)Windows 窗體控件是從 System.Windows.Forms.Control 類派生的類菜單控件MenuStrip通用(tngyng)對話框用戶自定義對話框共三十三頁內容摘要第4章。文件的編輯(復制、粘貼、剪貼)。隨容器的大小而改變自身大
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 掀起復習熱潮2024年陪診師考試試題及答案
- 14普羅米修斯(教學設計)-2024-2025學年語文四年級上冊統(tǒng)編版
- 通過故事分享提升道德認知計劃
- 如何有效地進行預算控制計劃
- 總結中發(fā)現機會與挑戰(zhàn)的管理思路計劃
- 促進社區(qū)經濟循環(huán)的策略計劃
- 全面了解寵物殯葬師考試試題及答案
- 深度解讀監(jiān)理工程師考試試題及答案
- 優(yōu)化教師資格證復習試題及答案
- 夏季防蛇安全
- 《清華大學介紹》課件
- 重癥專科護士考試題庫(含答案)
- 神經阻滯療法在慢性疼痛治療中的應用-課件
- 遼寧省大連市藥品零售藥店企業(yè)藥房名單目錄
- 《作文吹泡泡》-完整版課件
- 電化學儲能保險發(fā)展報告
- 不合格產品統(tǒng)計表
- 《外科學》第七節(jié) 直腸癌
- DG-TJ 08-2002-2020 懸挑式腳手架安全技術標準 高質量清晰版
- Z世代消費態(tài)度洞察報告
- 辦公樓辦公室改檔案室結構加固施工方案(15頁)
評論
0/150
提交評論