使用C#設(shè)計(jì)仿Windows記事本分解課件_第1頁(yè)
使用C#設(shè)計(jì)仿Windows記事本分解課件_第2頁(yè)
使用C#設(shè)計(jì)仿Windows記事本分解課件_第3頁(yè)
使用C#設(shè)計(jì)仿Windows記事本分解課件_第4頁(yè)
使用C#設(shè)計(jì)仿Windows記事本分解課件_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第4章仿Windows記事本第4章仿Windows記事本22記事本功能分析文件的讀寫(xiě)StreamReader/StreamWriter通用對(duì)話框設(shè)計(jì)文件的編輯(復(fù)制、粘貼、剪貼)文本的查找與替換22記事本功能分析文件的讀寫(xiě)33計(jì)算器外觀設(shè)計(jì)33計(jì)算器外觀設(shè)計(jì)界面設(shè)計(jì)MenuStrip控件LayoutStyle:Flow;可隨容器的大小發(fā)生改變菜單項(xiàng)ShortcutKeys:設(shè)置快捷鍵ShortcutKeyDisplayStringEnabled:設(shè)置菜單項(xiàng)是否可用Name:設(shè)置菜單項(xiàng)的名字Text:菜單項(xiàng)上顯示的文本界面設(shè)計(jì)MenuStrip控件界面設(shè)計(jì)RichTextBox控件Dock:Fill;隨容器的大小而改變自身大小Modified:設(shè)置或判斷控件中的內(nèi)容是否被修改Selected:獲取或設(shè)置選定文本Font:獲取或設(shè)置字體界面設(shè)計(jì)RichTextBox控件66菜單項(xiàng)66菜單項(xiàng)文件的讀、寫(xiě)操作文件的讀、寫(xiě)操作文件和流System.IO命名空間提供了操作文件與目錄的類(lèi)文件的讀取需要用流(stream)來(lái)進(jìn)行操作流就是C#中讀寫(xiě)文件的通道程序通過(guò)輸入流從數(shù)據(jù)源讀取數(shù)據(jù),通過(guò)輸出流向目的地寫(xiě)數(shù)據(jù)。數(shù)據(jù)源(文件、鍵盤(pán)、內(nèi)存)C#程序數(shù)據(jù)目的(文件、控制臺(tái)、內(nèi)存)輸入流輸出流文件和流System.IO命名空間提供了操作文件與目錄的類(lèi)數(shù)System.IO.StreamWriter寫(xiě)文件StreamWritersw=newStreamWriter(@“c:\testfile.txt”,true,System.Text.Encoding.Default);//第一個(gè)參數(shù)為文件名,第二個(gè)參數(shù)判斷是否覆蓋已有//文件,第三個(gè)參數(shù)為編碼方式sw.WriteLine("測(cè)試數(shù)據(jù)1");sw.WriteLine("測(cè)試數(shù)據(jù)2");sw.Write("測(cè)試數(shù)據(jù)3測(cè)試數(shù)據(jù)3測(cè)試數(shù)據(jù)3"+"測(cè)試數(shù)據(jù)3測(cè)試數(shù)據(jù)3測(cè)試數(shù)據(jù)3測(cè)試數(shù)據(jù)3"+"測(cè)試數(shù)據(jù)3測(cè)試數(shù)據(jù)3測(cè)試數(shù)據(jù)3測(cè)試數(shù)據(jù)3");sw.Close();System.IO.StreamWriter寫(xiě)文件StrSystem.IO.StreamReader讀文件StreamReadersr=newStreamReader(@“c:\testfile.txt”,System.Text.Encoding.Default);MessageBox.Show(sr.ReadLine());MessageBox.Show(sr.ReadToEnd());sr.Close();System.IO.StreamReader讀文件Str通用對(duì)話框設(shè)計(jì)通用對(duì)話框設(shè)計(jì)通用對(duì)話框概述在.NET框架中,提供了以下對(duì)話框類(lèi):打開(kāi)文件對(duì)話框(OpenFileDialog)保存文件對(duì)話框(SaveFileDialog)字體對(duì)話框(FontDialog)顏色對(duì)話框(ColorDialog)頁(yè)面設(shè)置對(duì)話框(PageSetupDialog)打印對(duì)話框(PrintDialog)等類(lèi)。通用對(duì)話框概述在.NET框架中,提供了以下對(duì)話框類(lèi):通用對(duì)話框的使用方法首先聲明一個(gè)通用對(duì)話框,設(shè)置一些必要屬性調(diào)用ShowDialog()方法打開(kāi)對(duì)話框接收用戶與對(duì)話框交互操作的返回值,返回值是DialogResult實(shí)例OpenFileDialogdlg=newOpenFileDialog();dlg.Filter="文本文件(*.txt)|*.txt|所有文件(*.*)|*.*";dlg.Title="打開(kāi)文件";if(dlg.ShowDialog()==DialogResult.OK)//顯示打開(kāi)文件對(duì)話框{

string_fileName=dlg.FileName;}通用對(duì)話框的使用方法首先聲明一個(gè)通用對(duì)話框,設(shè)置一些必要屬性O(shè)penFileDialog控件常用屬性說(shuō)明FileName獲取或設(shè)置用戶在打開(kāi)文件對(duì)話框中選擇的文件名Filter設(shè)置文件篩選過(guò)濾器,用于指定對(duì)話框中文件類(lèi)型Multiselect設(shè)置是否允許選擇多個(gè)文件FileNames只讀屬性,獲取用戶選擇的多個(gè)文件名OpenFileDialog控件本身并不能打開(kāi)文件,如要顯示文件可以通過(guò)創(chuàng)建StreamReader對(duì)象來(lái)讀取文件內(nèi)容。OpenFileDialog控件常用屬性說(shuō)明FileNameOpenFileDialogodlg=newOpenFileDialog();odlg.Filter="文本文件(*.txt)|*.txt|所有文件(*.*)|*.*";odlg.Title="打開(kāi)文件";if(odlg.ShowDialog()==DialogResult.OK)//顯示打開(kāi)文件對(duì)話框

{StreamReadersr=newStreamReader(odlg.FileName,Encoding.Default);rtxtContent.Text=sr.ReadToEnd();sr.Close(); }OpenFileDialogodlg=newOpenSaveFileDialog控件常用屬性說(shuō)明FileName獲取或設(shè)置用戶在保存文件對(duì)話框中選擇的文件名Filter設(shè)置文件篩選過(guò)濾器,用于指定對(duì)話框中文件類(lèi)型AddExtension設(shè)置在省略擴(kuò)展名時(shí),是否自動(dòng)將擴(kuò)展名添加到文件名上DefaultExt默認(rèn)的文件擴(kuò)展名SaveFileDialog控件本身并不能保存文件,如要寫(xiě)文件可以通過(guò)創(chuàng)建StreamWriter對(duì)象來(lái)實(shí)現(xiàn)。SaveFileDialog控件常用屬性說(shuō)明FileNameSaveFileDialogsdlg=newSaveFileDialog();sdlg.Filter="文本文件(*.txt)|*.txt|所有文件(*.*)|*.*";sdlg.Title=“保存文件";Sdlg.AddExtension=true;Sdlg.DefaultExt=“.txt”;if(sdlg.ShowDialog()==DialogResult.OK)//顯示保存文件對(duì)話框

{StreamWritersw=newStreamWriter(sdlg.FileName,true,Encoding.Default);sw.Write(rtxtContent.Text);sw.Close(); }SaveFileDialogsdlg=newSaveFontDialog控件用于設(shè)置文本字體,可以改變字體、字號(hào)、字形、顏色等。FontDialog控件用于設(shè)置文本字體,可以改變字體、字號(hào)常用屬性說(shuō)明Font獲取或設(shè)置選定的字體ShowColor是否顯示顏色選項(xiàng),默認(rèn)為不顯示ShowEffects是否包含特殊效果選項(xiàng),如刪除線,下劃線等,默認(rèn)為顯示

privatevoidmnuFont_Click(objectsender,EventArgse)//修改字體

{FontDialogfontDialog1=newFontDialog();fontDialog1.ShowColor=true;if(fontDialog1.ShowDialog()==DialogResult.OK)rtxtContent.Font=fontDialog1.Font;}常用屬性說(shuō)明Font獲取或設(shè)置選定的字體ShowColor是記事本功能實(shí)現(xiàn)記事本功能實(shí)現(xiàn)實(shí)現(xiàn):另存為…分析:一、文件菜單“另存為…”的單擊事件:設(shè)置saveFileDialog1的屬性;創(chuàng)建StreamWriter對(duì)象,取名為sw1,使用sw1將rtxtContent中的內(nèi)容寫(xiě)入到指定的文件中;設(shè)置rtxtContent.Modified=false;設(shè)置_filename字段;關(guān)閉sw1對(duì)象在記事本窗體中設(shè)置字段或聲明對(duì)象:添加一個(gè)變量_filename,用來(lái)保存文件名;聲明一個(gè)SaveFileDialog類(lèi)控件,取名為saveFileDialog1實(shí)現(xiàn):另存為…一、文件菜單“另存為…”的單擊事件:在記事本窗實(shí)現(xiàn):保存分析:(以下內(nèi)容均在“保存”菜單項(xiàng)的單擊事件中實(shí)現(xiàn))一、文件菜單創(chuàng)建StreamWriter對(duì)象,將修改過(guò)的內(nèi)容保存到現(xiàn)有文件中判斷:文件是否存在(已保存過(guò))調(diào)用“另存為…”的功能代碼是否實(shí)現(xiàn):保存一、文件菜單創(chuàng)建StreamWriter對(duì)象,判斷實(shí)現(xiàn):新建分析(以下內(nèi)容均在“新建”菜單項(xiàng)的單擊事件中實(shí)現(xiàn))一、文件菜單判斷:rtxtContent中是否有修改后未作的內(nèi)容,條件為真:彈擊消息框,提示是否需要保存Yes:調(diào)用“保存”功能No:不作任何操作Cancel:設(shè)置_isContinue=false添加一個(gè)標(biāo)志:bool_isContinue=true;判斷:_isContinue,條件為真:將rtxtContent清空;設(shè)置form1.Text="新建文本文檔_記事本";設(shè)置_filename=“”;實(shí)現(xiàn):新建一、文件菜單判斷:rtxtContent中是否有修實(shí)現(xiàn):打開(kāi)分析(以下內(nèi)容均在“打開(kāi)”菜單項(xiàng)的單擊事件中實(shí)現(xiàn))一、文件菜單判斷:rtxtContent中是否有修改后未作的內(nèi)容,條件為真:彈擊消息框,提示是否需要保存Yes:調(diào)用“保存”功能No:不作任何操作Cancel:設(shè)置_isContinue=false添加一個(gè)標(biāo)志:bool_isContinue=true;判斷:_isContinue,條件為真:聲明一個(gè)OpenFileDialog控件創(chuàng)建一個(gè)StreamReader類(lèi)對(duì)象將指定的文件顯示出來(lái)實(shí)現(xiàn):打開(kāi)一、文件菜單判斷:rtxtContent中是否有修二、編輯菜單實(shí)現(xiàn):剪切,復(fù)制,粘貼,刪除,撤銷(xiāo),全選分析:RichTextBox的常用屬性和方法常用屬性說(shuō)明Select()選擇文本SelectAll()選擇所有內(nèi)容Cut()將選擇的內(nèi)容剪切至剪貼板Copy()將選擇的內(nèi)容復(fù)制至剪貼板Paste()將剪貼板中的內(nèi)容粘貼至光標(biāo)處Undo()撤銷(xiāo)ClearUndo()消除最近的撤銷(xiāo)信息SelectionLength選擇內(nèi)容的長(zhǎng)度SelectedText選擇的文本二、編輯菜單實(shí)現(xiàn):剪切,復(fù)制,粘貼,刪除,撤銷(xiāo),全選常用屬性當(dāng)“編輯”菜單的Click事件和DropDownOpened事件發(fā)生時(shí),判斷“編輯”菜單下的各二級(jí)菜單項(xiàng)是否可用。rtxtContent.Modified撤銷(xiāo)rtxtContent.SelectedTextrtxtContent.Text剪切、復(fù)制、刪除Clipboard.GetText().ToString()查找、替換粘貼二、編輯菜單當(dāng)“編輯”菜單的Click事件和DropDownOpened三、查找與替換創(chuàng)建用戶自定義對(duì)話框

對(duì)話框與窗口的不同主要體現(xiàn)在對(duì)話框不能調(diào)整大小。因此將窗體設(shè)置成對(duì)話框,需設(shè)置窗體的幾個(gè)屬性。常用屬性說(shuō)明FormBorderStyle提示窗體的邊框和標(biāo)題欄的外觀和行為MaximizeBox確定窗體標(biāo)題欄是否有最大化框MinimizeBox確定窗體標(biāo)題欄是否有最小化框StartPosition確定窗體第一次出現(xiàn)時(shí)的位置AcceptButton設(shè)置窗體的“接受”按鈕,用戶按“Enter“鍵,都相當(dāng)于單擊該按鈕三、查找與替換創(chuàng)建用戶自定義對(duì)話框常用屬性說(shuō)明FormBor1.實(shí)現(xiàn):查找三、查找與替換關(guān)鍵技術(shù):富文本框的Find()方法rtxtContent.Find(searchString);rtxtContent.Find(searchString,searchPosition,RichTextBoxFinds.MatchCase);富文本框的Select()方法rtxtContent.Select(startPosition,selectLength);1.實(shí)現(xiàn):查找三、查找與替換關(guān)鍵技術(shù)://添加兩個(gè)成員字段int_findPosition=0;string_findString=“”;privatevoidmnuFind_Click(objectsender,EventArgse){frmFindfrmFind1=newfrmFind();if(frmFind1.ShowDialog()==DialogResult.OK){_findString=frmFind1.strFind;Find();//調(diào)用Find()方法進(jìn)行查找

}}//添加兩個(gè)成員字段privatevoidmnuFinpublicvoidFind()//查找方法

{_findPosition=rtxtContent.Find(_findString,_findPosition,RichTextBoxFinds.MatchCase);

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論