版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 單 位 **** 分院(系)</p><p> 專 業(yè) **** </p><p> 學(xué) 號 **** </p><p> 學(xué)生姓名 ***** </p><p> 指導(dǎo)教師 *** </p><p
2、> 完成日期 ** 年 * 月* 日</p><p><b> 摘 要</b></p><p> 自今年開學(xué)以來,我一直在學(xué)校學(xué)習(xí)vb程序設(shè)計,在為期半年的學(xué)習(xí)時間中,經(jīng)歷了一些軟件設(shè)計開發(fā)的實踐,在這些設(shè)計中學(xué)到許多書本上不能體會到的知識,下面將要介紹的一個設(shè)計,就是我在上課程設(shè)計時學(xué)到的,從老師的課程要求從而確定設(shè)計要求、項目的具體設(shè)計到項目的具體代
3、碼實施,在這個項目設(shè)計階段,主要由我和我所在組的成員完成,他們對vb有著不少的經(jīng)驗,另外老師在這次項目開發(fā)中對我們起到了指導(dǎo)性的作用,使得我欽佩不已,下面就詳細(xì)的說一下我們開發(fā)的這個項目。 一.設(shè)計目的</p><p> 自從接到我們要上課程設(shè)計課開始,我們知道word的文本編輯器,當(dāng)然眾所周知word是當(dāng)今最流行最常用的文本編輯器,用來日常對工作生活中的文本進(jìn)行編輯,它的功能強(qiáng)大,也在軟
4、件設(shè)計業(yè)成為了一種流行的標(biāo)準(zhǔn)。我們這次設(shè)計的就是以word的一些基本功能為基礎(chǔ),由于我們的能力有限我們把一些特殊功能刪除了,只留下了一些簡單的功能例如:剪切、新建、復(fù)制、粘貼、查找等。此次設(shè)計課主要是鍛煉我們的vb設(shè)計能力和思維考慮能力使我們的vb 學(xué)習(xí)真正的用到實處,無論在將來工作還是學(xué)習(xí)有著重要作用 </p><p> 二設(shè)計要求、 本系統(tǒng)由兩個菜單組成:文件、編
5、輯,界面如圖:</p><p> (1)文件菜單包括:新建、打開、保存、退出。</p><p> ?。?)編輯菜單包括:復(fù)制、剪貼、粘貼、字體設(shè)置。</p><p><b> 要求:</b></p><p><b> 1.1人完成</b></p><p> 2. 利用
6、菜單、工具欄實現(xiàn)上述功能。 應(yīng)用控件名稱:RichTextBox CommonDialog 6.0</p><p><b> 目錄</b></p><p> 1.選題的意義 --------------------------------5 </p><p>
7、2.系統(tǒng)的功能能分 ---------------------------------------7</p><p> 2.1 系統(tǒng)概述 ----------------------------------------------------------------7 </p><p&g
8、t; 2.2 系統(tǒng)的構(gòu)成 -------------------------------------------------------------8 </p><p> 2.3系統(tǒng)的運行環(huán)境 ---------------------------------------------------------9
9、 </p><p> 2.4設(shè)計思路-------------------------------------------------------------------9 </p><p> 3.主要控件功能介紹
10、------------------------------------17</p><p> 3.1 控件功能 ----------------------------------------------------------------17</p><p> 3.2設(shè)計的代碼 ---------------------------------------------------
11、-----------21</p><p> 4.總結(jié)--------------------------------------------------26</p><p> 4.1總結(jié)-------------------------------------------------------------------------26</p><p> 4.
12、2 存在的主要問題----------------------------------------------------------26</p><p> 參考文獻(xiàn)-------------------------------------------------26</p><p><b> 第一章 選題的意義</b></p><p>
13、 VB6.0全稱為VisualBasic 6.0,是微軟公司推出的可視化編程工具M(jìn)SDN之一,是目前世界上使用最廣泛的程序開發(fā)工具。如果你是一個對編程一無所知,而又迫切希望掌握一種快捷實用的編程語言的初學(xué)者,那選擇VB 6.0沒錯的。即使考慮到VB程序本身編譯和運行效率較低的不足(嘻嘻速度現(xiàn)在不是問題吧),單是它的快捷的開發(fā)速度,簡單易學(xué)的語法,體貼便利的開發(fā)環(huán)境,它仍不失一款優(yōu)秀的編程工具,是學(xué)習(xí)VB初學(xué)者的首選。也許你會問,我以前沒
14、學(xué)過任何一種語言,我能快速上手嗎?別擔(dān)心,沒問題VB的語法的和QBASIB語言是基本相同的,也就是說它的語法是最容易被初學(xué)者所接受的。另外VB提供的是可視化的開發(fā)環(huán)境,我們可以象搭積木一樣構(gòu)建出程序的界面,而且VB提供了豐富的控件組,省去了我們自己寫代碼實現(xiàn)這些效果的麻煩,這樣我們就能把更多的精力放在程序功能的實現(xiàn)上,所以VB學(xué)起來簡單,用起來方便。接著看看VB語言的前景,在目前各種編程語言共存的時代,VB會不會落伍呢?當(dāng)然不會了,在我
15、寫這篇文章的同時,微軟已經(jīng)透露了VB7.0將完全面向?qū)ο蟮南ⅲ梢钥隙ㄏ乱淮鶹B的功能一定會強(qiáng)大很多,我們這些所謂的 V</p><p> 第二章系統(tǒng)功能需求分析</p><p><b> 2.1 系統(tǒng)概述</b></p><p><b> 簡介</b></p><p> 文本編輯器(或稱
16、文字編輯器)是用作編寫普通文字的應(yīng)用軟件,它與文檔編輯器(或稱文字處理器)不同之處在于它并非用作桌面排版(例如文檔格式處理)。它常用來編寫程序的源代碼。 </p><p> 常見的有Linux下的vi、emacs、gedit、DOS下的edit、Windows下的記事本、寫字板等等。 </p><p> 如何使用文本編輯器:開始/運行輸入edit命令進(jìn)入文本編輯器進(jìn)行編輯文本;也可以在
17、cmd下輸入edit進(jìn)入文本編輯器。文本編輯器類似c語言界面。是一種很實用的文本編輯軟件。 </p><p><b> 典型功能</b></p><p><b> 查找和替換</b></p><p> 在一個文本文件中查找一個詞或者一個字符串,把一個字符串替換成另一個字符串??刹扇「鞣N方式進(jìn)行:全局查找替換、條件查找
18、替換、無條件查找替換。 </p><p><b> 剪切、復(fù)制、粘貼</b></p><p> 大多數(shù)文本編輯器都支持文件內(nèi)的或者文件間的復(fù)制或者移動。 </p><p><b> 字體設(shè)置</b></p><p> 大多數(shù)文本編輯器都有字體設(shè)置這一個功能</p><p&
19、gt;<b> 打開、保存、新建、</b></p><p> 這也是文本編輯器的一個最簡單的功能</p><p><b> 2.2系統(tǒng)構(gòu)成</b></p><p> 只由有一個界面組成簡單見圖</p><p> 2.3系統(tǒng)的運行環(huán)境</p><p> 在裝有vb程
20、序的計算機(jī)中運行。</p><p><b> 2.4設(shè)計思路</b></p><p> 步驟一:繪制界面。 </p><p> 新建一個標(biāo)準(zhǔn)EXE工程,將其Caption屬性改為“超級記事本”,點擊Icon屬性給它找個合適的Icon圖標(biāo)。單擊菜單“工程”-“部件”,在彈出的“部件”對話框里找到Microsoft RichText Box
21、6.0和公共對話框Microsoft Common Dialog 6.0并選中它們,單擊“確定”按鈕。這時左邊的工具欄上出現(xiàn)了我們剛才新添的兩個控件了。在窗體上繪制RichText Box和Commn Dialog,其中RichText Box的大小和位置可不用理睬,我們將在代碼中處理它,當(dāng)然,有必要把它的ScrollBar屬性設(shè)為2-rtfVertical,這樣在打開和編輯文件時垂直滾動條才可用。 </p><p&
22、gt; 步驟二:編輯菜單。 </p><p> 按Ctrl+E調(diào)出菜單編輯器,我們來做如下幾個菜單: </p><p><b> 一.文件菜單: </b></p><p> 文件(第一層) mnuFile </p><p> 新建(第二層) mnuNew </p><p> 打開(第二
23、層) mnuOpen </p><p> 保存(第二層) mnuSave </p><p> - (第二層) mnuFileSep (分隔線) </p><p> 退出(第二層) mnuExit </p><p><b> 二.編輯菜單: </b></p><p> 編輯(第一層) mn
24、uEdit </p><p> 復(fù)制(第二層) mnuCopy </p><p> 剪切(第二層) mnuCut </p><p> 粘貼(第二層) mnuPaste </p><p> - (第二層) mnuEditSep (分隔線) </p><p> 全選(第二層) mnuSelecAll </p
25、><p><b> 三.搜索菜單: </b></p><p> 搜索(第一層) mnuSearch </p><p> 查找(第二層) mnuFind </p><p> 查找下一個(第二層) mnuFindOn </p><p><b> 四.幫助菜單: </b>&l
26、t;/p><p> 幫助(第一層) mnuHelp </p><p> 使用說明(第二層) mnuUsage </p><p> 關(guān)于(第二層) mnuAbout </p><p> (注:各菜單項的快捷鍵請自行設(shè)置) </p><p> 好了,其它的菜單項以后再根據(jù)需要添加?,F(xiàn)在進(jìn)入: </p>
27、<p> 步驟三:編寫代碼。 </p><p><b> '聲明查找變量 </b></p><p> Dim sFind As String </p><p><b> '聲明文件類型 </b></p><p> Dim FileType, FiType As S
28、tring </p><p><b> '初始化程序 </b></p><p> Private Sub Form_Load() </p><p> '設(shè)置程序啟動時的大小 </p><p> Me.Height = 6000 </p><p> Me.Width = 9
29、000 </p><p><b> End Sub </b></p><p> '設(shè)置編輯框的位置和大小 </p><p> Private Sub Form_Resize() </p><p> On Error Resume Next '出錯處理 </p><p>
30、RichTextBox1.Top=20 </p><p> RichTextBox1.Left=20 </p><p> RichTextBox1.Height = ScaleHeight-40 </p><p> RichTextBox1.Width = ScaleWidth-40 </p><p><b> End Su
31、b </b></p><p><b> '新建文件 </b></p><p> Private Sub mnuNew_Click() </p><p> RichTextBox1.Text = "" '清空文本框 </p><p> FileName = "
32、;未命名" </p><p> Me.Caption = FileName </p><p><b> End Sub </b></p><p><b> '打開文件 </b></p><p> Private Sub mnuOpen_Click() </p>
33、<p> CommonDialog1.Filter = "文本文檔(*.txt)|*.txt|RTF文檔(*.rtf)|*.rtf|所有文件(*.*)|*.*" </p><p> CommonDialog1.ShowOpen </p><p> RichTextBox1.Text = "" '清空文本框 </p>
34、;<p> FileName = CommonDialog1.FileName </p><p> RichTextBox1.LoadFile FileName </p><p> Me.Caption = "超級記事本:" & FileName </p><p><b> End Sub </b&g
35、t;</p><p><b> '保存文件 </b></p><p> Private Sub mnuSave_Click() </p><p> CommonDialog1.Filter = "文本文檔(*.txt)|*.txt|RTF文檔(*.rtf)|*.rtf|所有文件(*.*)|*.*" </p
36、><p> CommonDialog1.ShowSave </p><p> FileType = CommonDialog1.FileTitle </p><p> FiType = LCase(Right(FileType, 3)) </p><p> FileName = CommonDialog1.FileName </p&
37、gt;<p> Select Case FiType </p><p> Case "txt" </p><p> RichTextBox1.SaveFile FileName, rtfText </p><p> Case "rtf" </p><p> RichTextBox
38、1.SaveFile FileName, rtfRTF </p><p> Case "*.*" </p><p> RichTextBox1.SaveFile FileName </p><p> End Select </p><p> Me.Caption = "超級記事本:" &
39、 FileName </p><p><b> End Sub </b></p><p><b> '退出 </b></p><p> Private Sub mnuExit_Click() </p><p><b> End </b></p>&
40、lt;p><b> End Sub </b></p><p><b> '復(fù)制 </b></p><p> Private Sub mnuCopy_Click() </p><p> Clipboard.Clear </p><p> Clipboard.SetText Ri
41、chTextBox1.SelText </p><p><b> End Sub </b></p><p><b> '剪切 </b></p><p> Private Sub mnuCut_Click() </p><p> Clipboard.Clear </p>
42、<p> Clipboard.SetText RichTextBox1.SelText </p><p> RichTextBox1.SelText = "" </p><p><b> End Sub </b></p><p> '全選RichTextBox1.SelStart = 0 </
43、p><p> RichTextBox1.SelLength = Len(RichTextBox1.Text) </p><p> Private Sub mnuSelectAll_Click() </p><p> RichTextBox1.SelStart = 0 </p><p> RichTextBox1.SelLength = L
44、en(RichTextBox1.Text) </p><p><b> End Sub </b></p><p><b> '粘貼 </b></p><p> Private Sub mnuPaste_Click() </p><p> RichTextBox1.SelText =
45、Clipboard.GetText </p><p><b> End Sub </b></p><p><b> '查找 </b></p><p> Private Sub mnuFind_Click() </p><p> sFind = InputBox("請輸入要查
46、找的字、詞:", "查找內(nèi)容", sFind) </p><p> RichTextBox1.Find sFind </p><p><b> End Sub </b></p><p><b> '繼續(xù)查找 </b></p><p> Private S
47、ub mnuFindOn_Click() </p><p> RichTextBox1.SelStart = RichTextBox1.SelStart + RichTextBox1.SelLength + 1 </p><p> RichTextBox1.Find sFind, , Len(RichTextBox1) </p><p><b> E
48、nd Sub </b></p><p><b> '使用說明 </b></p><p> Private Sub mnuReadme_Click() </p><p> On Error GoTo handler </p><p> RichTextBox1.LoadFile "Re
49、adme.txt", rtfText '請寫好Readme.txt文件并存入程序所在文件夾中 </p><p> Me.Caption = "超級記事本:" & "使用說明" </p><p><b> Exit Sub </b></p><p><b> han
50、dler: </b></p><p> MsgBox "使用說明文檔可能已經(jīng)被移除,請與作者聯(lián)系。", vbOKOnly, " 錯誤信息" </p><p><b> End Sub </b></p><p><b> '關(guān)于 </b></p>
51、<p> Private Sub mnuAbout_Click() </p><p> MsgBox "超級記事本 Ver1.0 版權(quán)所有(C) 2001 土人",vbOKOnly,"關(guān)于" </p><p><b> End Sub </b></p><p> '設(shè)置彈出式菜
52、單(即在編輯框中單擊鼠標(biāo)右鍵時彈出的動態(tài)菜單) </p><p> Private Sub RichTextBox1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) </p><p> If Button = 2 Then </p><p> PopupMenu
53、mnuEdit, vbPopupMenuLeftAlign </p><p><b> Else </b></p><p><b> Exit Sub </b></p><p><b> End If </b></p><p><b> End Sub <
54、;/b></p><p> '防止在切換輸入法時字體自變(感謝王必成先生提供此方案) </p><p> Private Sub RichTextBox1_KeyUp(KeyCode As Integer, Shift As Integer) </p><p> If KeyCode = vbKeySpace Then </p>&
55、lt;p> RichTextBox1.SelFontName = CommonDialog1.FontName </p><p><b> End If </b></p><p><b> End Sub </b></p><p> 至此,我們的記事本可以編譯使用了。點擊菜單“文件”-“生成XXX.EXE”,
56、回到桌面運行我們的記事本看看,是不是頗有成就感? </p><p> 當(dāng)然,這樣的記事本還比較粗糙,我們還需要做些工作,請看下一章。 </p><p> 第二章 美化程序界面 </p><p> 多數(shù)字處理軟件都有工具欄和狀態(tài)欄。工具欄和狀態(tài)欄除了能美化我們的程序使其更具有專業(yè)性質(zhì)外,還給用戶帶來操作上的便利。現(xiàn)在我們就來做一做這兩樣?xùn)|西。 </p>
57、;<p><b> 一.工具欄 </b></p><p><b> (一)制作工具欄 </b></p><p> 單擊“工程”-“部件”,選中Microsoft Windows Common Control 6.0并確定。這時,我們要用到的控件就出現(xiàn)在左邊的工具欄上了。 </p><p> 要做工具欄
58、,首先需要一個叫ImageList的控件來裝載圖像。在程序界面上添加它,然后右鍵單擊此控件,左鍵單擊“屬性”,彈出“屬性頁”對話框的“圖像”,再單擊“插入圖片”就可以一次性裝載圖片了(如不滿意,以后還可以添加)。圖片可在C:\Microsoft Visual Studio\Common\Graphics\Bitmaps\TlBr_W95下選擇(這里假設(shè)你的VB安裝在C盤下)。注意了:在插入圖片時給每一張圖片注明關(guān)鍵字,以便在引用圖片時不
59、至于混亂。如插入“新建”的圖片,我們在“關(guān)鍵字”欄注明“New”。 </p><p> 圖片有了,接下來在程序界面添加工具欄(ToolBar)。添加后工具欄就出現(xiàn)在菜單下面,右鍵單擊它,選擇“屬性”,在彈出的“屬性頁”對話框中的“通用”項作些設(shè)置,主要如下兩項: </p><p> 1.“圖像列表”:選擇ImageList1 </p><p> 2.“樣式”:
60、根據(jù)喜愛選擇1-trbStandard或者2-trbFlat </p><p> 繼續(xù)點擊“屬性頁”的“按鈕”選項,插入若干按鈕。按鈕有多種樣式,請根據(jù)需要設(shè)置。這里請一定注意:每一個與用戶操作有關(guān)的按鈕都必須注明關(guān)鍵字、裝載圖片,如“新建”按鈕,在“關(guān)鍵字”項注明“新建”,在“圖像”項鍵入“New”(即ImageList1中的圖片關(guān)鍵字),需要的話還可以在“工具提示文本”項填入適當(dāng)?shù)奶崾菊Z。 </p&g
61、t;<p> (二)編寫工具欄的按鈕代碼 </p><p> 工具欄按鈕的代碼編輯很簡單,可以按照下面的格式去編寫: </p><p> Private Sub ToolBar1_ButtonClick(ByVal Button As MSComctlLib.Button) </p><p> On Error Resume Next '
62、;出錯處理 </p><p> Select Case Button.Key '按關(guān)鍵字選擇 </p><p> Case "新建" </p><p> mnuNew_Click '等于菜單項“新建”被單擊 </p><p> Case "打開" '等于菜單項“打開”被單
63、擊 </p><p> mnuOpen_Click </p><p> '......(繼續(xù)編寫其它按鈕的代碼) </p><p> End Select </p><p><b> End Sub </b></p><p> 完成后試運行一下我們的程序,我們發(fā)現(xiàn),有了工具欄之后
64、,程序變得漂亮多了,只是有一個問題:打開一個較長的文檔后,編輯框的下拉滾動條向上的箭頭不見了。原因是:工具條占用一定的空間。解決方法:將“設(shè)置編輯框的位置和大小”中的RichTextBox1.Top = 20 和 RichTextBox1.Height = Me.ScaleHeight - 40分別改為RichTextBox1.Top = 380,RichTextBox1.Height = Me.ScaleHeight - 400即可。
65、 </p><p><b> 二.狀態(tài)欄 </b></p><p><b> (一)制作狀態(tài)欄 </b></p><p> 狀態(tài)欄的英文名字叫StatusBar,在窗體上添加它后會默認(rèn)出現(xiàn)在窗體的最下方。用鼠標(biāo)右鍵點擊它,調(diào)出“屬性頁”對話框,單擊“窗格”項,插入一些窗格,可以將各個窗格的“樣式”設(shè)置為: </
66、p><p> 0-sbrText 顯示文本,需編寫代碼 </p><p> 1-sbrCaps 顯示大小寫狀態(tài),無需編程 </p><p> 2-sbrNum 顯示NumLock鍵開關(guān)狀態(tài),無需編程 </p><p> 3-sbrIns 顯示Insert鍵狀態(tài),無需編程 </p><p> 4-sbrScr1 &
67、lt;/p><p> 5-sbrTime 顯示時間,不編程時時間不會隨系統(tǒng)時鐘變化 </p><p> 6-sbrDate 顯示日期,無需編程 </p><p> 注意:加進(jìn)狀態(tài)欄后需將Form_Resze中的RichTextBox1.Height = Me.ScaleHeight - 400改為RichTextBox1.Height = Me.ScaleHeig
68、ht - 600。 </p><p> (二)狀態(tài)欄根據(jù)其“樣式”屬性決定用不用編寫代碼(如上文所述)。下面舉些例子,讀者可以認(rèn)真揣摩,從而達(dá)到舉一反三的效果。 </p><p> 例一:用戶選取了“新建”后,讓第一個窗格顯示:“目前狀態(tài):正在打開文件《……》”。請將下面代碼寫進(jìn)“打開”菜單里面: </p><p> StatusBar1.Panels(1).
69、Text = "目前狀態(tài):正在打開文件" & "《" &CommonDialog1.FileTitle & "》" </p><p> 例二:讓第三個窗格顯示時間并讓時間跟隨系統(tǒng)時鐘變化。 </p><p> 首先,給程序加一個Timer控件,將其Interval屬性設(shè)為1000。然后: </p&
70、gt;<p> 在Form_Load過程加入:StatusBar1.Panels(1).Text = Time;然后給Timer控件編寫代碼: </p><p> Private Sub Timer1_Timer() </p><p> If StatusBar1.Panels(3).Text <> CStr(Time) Then </p>&
71、lt;p> StatusBar1.Panels(3).Text = Time </p><p><b> End If </b></p><p><b> End Sub </b></p><p> 例三:當(dāng)編輯框的文本發(fā)生變化時讓第一個窗格顯示:“正在編輯文檔:文件名”。 </p><p
72、> Private Sub RichTextBox1_Chang() </p><p> StatusBar1.Panels(1).Text = "正在編輯文檔:" & CommonDialog1.FileName </p><p><b> End Sub </b></p><p> 第三章 主要控件
73、功能介紹</p><p><b> 3.1 控件功能</b></p><p> 今天我們一起用RichTextBox控件來做一個文本編輯器,這個文本編輯器具有比較完備的功能,例如:查找字串、設(shè)置字體等。通過這個程序,我們可以看到RichTextBox控件豐富的使用方法。 </p><p><b> 圖</b><
74、;/p><p> 程序中使用的RichTextBox控件在默認(rèn)狀態(tài)下不在控件面板中,我們可以在控件面板上點鼠標(biāo)右鍵“添加”,在“添加選擇對話框”中找到這個控件并添加。這時控件面板上會出現(xiàn)圖標(biāo),這就是這個小程序的主打控件RichTextBox。</p><p> 為了學(xué)習(xí)的方便,提供的源代碼都提供了詳細(xì)的中文注釋,如下所示:</p><p> 一個由RichText
75、Box實現(xiàn)的文本編輯器 '名稱作用Form1 主窗體 ' CmdOpen 通用對話框 ' RichTextBox1 RichTextBox ' mnuNew “新建”菜單項 ' mnuOpen “打開”菜單項 ' mnuSave “保存”菜單項 ' mnuExit “退出”菜單項 ' mnuFont “字體”菜單項 ' mnuPrint “打印”菜單項 '
76、mnuFind “查找”菜單項 ' mnuNext “查找下一個”菜單項 變量作' sFind 待查找的字符串 ' Option Explicit Public sFind As String Private Sub Form_Resize() '如果窗體不處于最小化RichTextBox1狀態(tài),改變RichTextBox1大小以適應(yīng)窗體大小變化 If Form1.WindowState <>
77、 1 Then RichTextBox1.Width = Form1.Width - 135 If Form1.Height < 1200 Then Form1.Height = 1200 End If RichTextB</p><p> 下面我們來看看RichTextBox控件的常用的屬性、事件和方法。</p><p> RichTextBox 控件可用于輸入和編輯文本,它同
78、時提供了比常規(guī)的TextBox控件更高級的格式特性。 通過這些屬性,可對該控件中任何部分的文本使用不同的格式,可以將文本變?yōu)榇煮w或斜體,改變文本的顏色,創(chuàng)建上標(biāo)或下標(biāo),可以調(diào)整段落的左右縮進(jìn)值,還可以使用懸掛式縮進(jìn)等。而且RichTextBox控件支持大于64K的文本,這些都是TextBox控件所不可比擬的。</p><p> RichTextBox 控件的主要屬性有:SelFontName、SelFontS
79、ize 和 SelFontColor,它們用來設(shè)置文字的字體、大小和顏色。使用的語法是:object.SelColor [= color] 需要注意的是,這個屬性改變的是選中文字的屬性,而不是所有的文字,這樣我們可以在編輯框內(nèi)出現(xiàn)不同的字體、顏色等。</p><p> ●另外程序中還用到了SelLength屬性-返回或設(shè)置所選擇的字符數(shù)。SelStart屬性-返回或設(shè)置所選擇的文本的起始點;如果沒有文本被選中
80、,則指出插入點的位置。 RichTextBox控件的主要方法有: ●LoadFile方法和SaveFile方法:它們的作用分別是從文件中導(dǎo)入文本和保存文本到指定的文件,這兩個方法支持txt和rtf格式的文本文件,使用的語法是: object.SaveFile(pathname, filetype) 其中pathname是要打開或保存的文件路徑,filetype是要打開或保存的文件類型(0表示txt文件;1表示rtf格式的文件)
81、?! 馞ind方法:其語法是:object.Find(string, start, end, options) 其中string是要查找的字符串;start, end是查找開始和結(jié)束的位置,如果不指定的話默認(rèn)是在全部文本中查找;options是查找時匹配的模式,有三種選擇,rtfWholeWord為整個單詞匹配而不是單詞片段,rtfMatchCase為是否忽略字體的差別,rtfNoHighlight為找到</p>
82、<p> 以上的方法和屬性只是RichTextBox控件豐富用法的</p><p> 3.2 設(shè)計的代碼</p><p> Dim sfind As String</p><p> Dim fileType, fitype As String</p><p> Private Sub Form_Load()</p
83、><p> Me.Height = 6000</p><p> Me.Width = 9000</p><p><b> End Sub</b></p><p> Private Sub Form_Resize()</p><p> On Error Resume Next '出錯處
84、理</p><p> RichTextBox1.Top = 600</p><p> RichTextBox1.Left = 20</p><p> RichTextBox1.Height = ScaleHeight - 300</p><p> RichTextBox1.Width = ScaleWidth - 40</p&g
85、t;<p><b> End Sub</b></p><p> Private Sub mnuFont_Click()</p><p> '當(dāng)“字體”菜單項被點擊時</p><p> '顯示“字體”對話框</p><p> '使用指定的方法,CommonDialog 控件能
86、夠顯示下列對話。</p><p> '----------------------------------------</p><p> '方法 所顯示的對話框</p><p> '----------------------------------------</p><p> 'Sh
87、owOpen 顯示“打開”對話框</p><p> 'ShowSave 顯示“另存為”對話框</p><p> 'ShowColor 顯示“顏色”對話框</p><p> 'ShowFont 顯示“字體”對話框</p><p> 'ShowPrinter 顯示“打印”或“打印選項”
88、對話框</p><p> 'ShowHelp 調(diào)用 Windows 幫助引擎</p><p> '----------------------------------------</p><p> CommonDialog1.Flags = cdlCFBoth + cdlCFEffects</p><p> Co
89、mmonDialog1.ShowFont</p><p> '將RichTextBox1的屬性根據(jù)“字體”對話框的變化作相應(yīng)設(shè)置</p><p> '----------------------------------------</p><p> '要改變 RichTextBox 控件中的字體特性,可以使用</p>&l
90、t;p> 'SelFontName、SelFontSize 和 SelFontColor 屬性。</p><p> '----------------------------------------</p><p> With RichTextBox1</p><p> .SelFontName = CommonDialog1.Font
91、Name</p><p> .SelFontSize = CommonDialog1.FontSize</p><p> .SelBold = CommonDialog1.FontBold</p><p> .SelItalic = CommonDialog1.FontItalic</p><p> .SelStrikeThru =
92、CommonDialog1.FontStrikethru</p><p> .SelUnderline = CommonDialog1.FontUnderline</p><p><b> End With</b></p><p><b> End Sub</b></p><p> Priv
93、ate Sub mnuNew_Click()</p><p> RichTextBox1.Text = "" '清空文本框</p><p> FileName = "未命名"</p><p> Me.Caption = FileName</p><p><b> End Sub
94、</b></p><p><b> '打開文件</b></p><p> Private Sub mnuOpen_Click()</p><p> CommonDialog1.Filter = "文本文檔(*.txt)│*.txt│RTF文檔(*.rtf)│*.rtf│所有文件(*.*)│*.*"&
95、lt;/p><p> CommonDialog1.ShowOpen</p><p> RichTextBox1.Text = "" '清空文本框</p><p> FileName = CommonDialog1.FileName</p><p> RichTextBox1.LoadFile FileName&
96、lt;/p><p> Me.Caption = "超級記事本:" & FileName</p><p><b> End Sub</b></p><p><b> '保存文件</b></p><p> Private Sub mnuSave_Click()&l
97、t;/p><p> CommonDialog1.Filter = "文本文檔(*.txt)│*.txt│RTF文檔(*.rtf)│*.rtf│所有文件(*.*)│*.*"</p><p> CommonDialog1.ShowSave</p><p> fileType = CommonDialog1.FileTitle</p>
98、<p> fitype = LCase(Right(fileType, 3))</p><p> FileName = CommonDialog1.FileName</p><p> Select Case fitype</p><p> Case "txt"</p><p> RichTextBox1
99、.SaveFile FileName, rtfText</p><p> Case "rtf"</p><p> RichTextBox1.SaveFile FileName, rtfRTF</p><p> Case "*.*"</p><p> RichTextBox1.SaveFile F
100、ileName</p><p> End Select</p><p> Me.Caption = "超級記事本:" & FileName</p><p><b> End Sub</b></p><p><b> '退出</b></p>&
101、lt;p> Private Sub mnuExit_Click()</p><p><b> End</b></p><p><b> End Sub</b></p><p><b> '復(fù)制</b></p><p> Private Sub mnuCo
102、py_Click()</p><p> Clipboard.Clear</p><p> Clipboard.SetText RichTextBox1.SelText</p><p><b> End Sub</b></p><p><b> '剪切</b></p>&
103、lt;p> Private Sub mnuCut_Click()</p><p> Clipboard.Clear</p><p> Clipboard.SetText RichTextBox1.SelText</p><p> RichTextBox1.SelText = ""</p><p><b&
104、gt; End Sub</b></p><p><b> '全選</b></p><p> Private Sub mnuSelectAll_Click()</p><p> RichTextBox1.SelStart = 0</p><p> RichTextBox1.SelLength
105、= Len(RichTextBox1.Text)</p><p><b> End Sub</b></p><p><b> '粘貼</b></p><p> Private Sub mnuPaste_Click()</p><p> RichTextBox1.SelText = C
106、lipboard.GetText</p><p><b> End Sub</b></p><p><b> '查找</b></p><p> Private Sub mnuFind_Click()</p><p> sfind = InputBox("請輸入要查找的字、詞
107、:", "查找內(nèi)容", sfind)</p><p> RichTextBox1.Find sfind</p><p><b> End Sub</b></p><p><b> '繼續(xù)查找</b></p><p> Private Sub mnuFin
108、dOn_Click()</p><p> RichTextBox1.SelStart = RichTextBox1.SelStart + RichTextBox1.SelLength + 1</p><p> RichTextBox1.Find sfind, , Len(RichTextBox1)</p><p><b> End Sub</b
109、></p><p> '設(shè)置彈出式菜單(即在編輯框中單擊鼠標(biāo)右鍵時彈出的動態(tài)菜單)</p><p> Private Sub RichTextBox1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)</p><p> If Button = 2 Th
110、en</p><p> PopupMenu mnuedit, vbPopupMenuLeftAlign</p><p><b> Else</b></p><p><b> Exit Sub</b></p><p><b> End If</b></p>
111、<p><b> End Sub</b></p><p> '防止在切換輸入法時字體自變</p><p> Private Sub RichTextBox1_KeyUp(KeyCode As Integer, Shift As Integer)</p><p> If KeyCode = vbKeySpace Then
112、</p><p> RichTextBox1.SelFontName = CommonDialog1.FontName</p><p><b> End If</b></p><p><b> End Sub</b></p><p> Private Sub ToolBar1_ButtonC
113、lick(ByVal Button As MSComctlLib.Button)</p><p> On Error Resume Next '出錯處理</p><p> Select Case Button.Key '按關(guān)鍵字選擇</p><p><b> Case "新建"</b></p>
114、;<p> mnuNew_Click '等于菜單項“新建”被單擊</p><p> Case "打開" '等于菜單項“打開”被單擊</p><p> mnuOpen_Click</p><p> Case "保存" '等于菜單項“打開”被單擊</p><p>
115、; mnuSave_Click</p><p> Case "復(fù)制" '等于菜單項“打開”被單擊</p><p> mnuCopy_Click</p><p> Case "剪切" '等于菜單項“打開”被單擊</p><p> mnuCut_Click</p>&
116、lt;p> Case "查找" '等于菜單項“打開”被單擊</p><p> mnuFind_Click</p><p> End Select</p><p><b> End Sub</b></p><p> Private Sub RichTextBox1_Chang()
117、</p><p> StatusBar1.Panels(1).Text = "正在編輯文檔:" & CommonDialog1.FileName</p><p><b> End Sub</b></p><p><b> 第四章 總結(jié)</b></p><p>&
118、lt;b> 4.1總結(jié)</b></p><p> 通過這次作題我明白了許多 vb 的知識和運用。</p><p> 4.2系統(tǒng)存在的問題</p><p> 主要存在的問題是查找的應(yīng)用和替換的應(yīng)用</p><p><b> 第五章 參考文獻(xiàn)</b></p><p> V
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- vb課程設(shè)計報告----文本編輯器
- vb課程設(shè)計報告---文本編輯器
- 文本編輯器課程設(shè)計
- 文本編輯器課程設(shè)計報告
- java課程設(shè)計--文本編輯器
- java課程設(shè)計---文本編輯器
- java課程設(shè)計---文本編輯器
- java課程設(shè)計(文本編輯器)
- c語言課程設(shè)計--文本編輯器
- c_文本編輯器課程設(shè)計
- 簡易文本編輯器課程設(shè)計報告
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計--文本編輯器
- 操作系統(tǒng)課程設(shè)計---文本編輯器
- vb課程設(shè)計報告---基于visual basic語言的文本編輯器設(shè)計
- 微機(jī)原理課程設(shè)計—簡易文本編輯器
- 文本編輯器
- c_編寫的文本編輯器課程設(shè)計
- visual_basic課程設(shè)計報告---文本編輯器
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計---簡易文本編輯器
- 文本編輯器_java課程設(shè)計實驗報告
評論
0/150
提交評論