版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第二章VC++6.0開發(fā)環(huán)境1本課程的主要內(nèi)容:可視化程序設(shè)計(jì)方法1)API(ApplicationProgrammingInterface)2)MFC(MicrosoftFoundationClass)課程目標(biāo):能自己編寫一個(gè)面向?qū)ο蟮墓芾硐到y(tǒng)(如學(xué)生管理系統(tǒng))各個(gè)章節(jié)的主要內(nèi)容是什么?區(qū)別:API是傳統(tǒng)的編程方法,MFC是交互式程序設(shè)計(jì)方法。MFC方法把API方法中實(shí)現(xiàn)不同功能的代碼作為類的方法已經(jīng)封裝到類中(微軟建好了類庫),我們只需建立類上的對(duì)象。一、本課程是講什么的?2二、WINDOWS特點(diǎn)31、WINDOWS應(yīng)用程序的一個(gè)突出特點(diǎn)是它有一個(gè)美觀的圖形用戶界面(GUI)。這個(gè)圖形用戶界面與鍵盤和鼠標(biāo)配合起來,使得用戶對(duì)應(yīng)用程序運(yùn)行的控制及操作變得極為方便。圖形用戶界面是由許多不同的圖形元素組成的,并且某些圖形元素在接受了用戶的某個(gè)動(dòng)作后,可以使程序執(zhí)行某種相應(yīng)的操作。圖形用戶界面就是WINDOWS應(yīng)用程序與用戶交互的一個(gè)窗口,復(fù)雜的應(yīng)用程序可能需要多個(gè)窗口。42、Windows中的事件驅(qū)動(dòng)程序設(shè)計(jì)啟動(dòng)輸入姓名輸入第一次測(cè)試成績(jī)輸入第二次測(cè)試成績(jī)輸入第三次測(cè)試成績(jī)計(jì)算平均成績(jī)結(jié)束過程驅(qū)動(dòng)方法計(jì)算平均成績(jī)啟動(dòng)消息處理結(jié)束輸入姓名輸入第一次成績(jī)輸入第二次成績(jī)輸入第三次成績(jī)計(jì)算平均成績(jī)事件驅(qū)動(dòng)方法計(jì)算平均成績(jī)5Windows程序設(shè)計(jì)是完全不同與傳統(tǒng)的DOS設(shè)計(jì)方法,Windows應(yīng)用程序是一個(gè)事件驅(qū)動(dòng)方式的程序設(shè)計(jì)模式,主要是基于消息的,當(dāng)用戶需要完成某種功能時(shí),會(huì)調(diào)用操作系統(tǒng)的某種支持(告訴操作系統(tǒng)),然后操作系統(tǒng)將用戶的需要包裝成消息并投遞到消息隊(duì)列中,最后應(yīng)用程序從消息隊(duì)列中取走消息并進(jìn)行響應(yīng)。6三、WINDOWS運(yùn)行原理
要理解Windows開發(fā)過程,先要了解Windows運(yùn)行機(jī)制,因?yàn)閂C++是Windows開發(fā)語言,我們要明白在Windows環(huán)境下編程和在其它環(huán)境下編程的根本區(qū)別,全面的討論Windows內(nèi)部運(yùn)行機(jī)制,將需要一本書的容量,我們沒有必要深入了解所有細(xì)節(jié),但對(duì)Windows根本性的概念,是VC++程序員必須掌握的知識(shí)。7應(yīng)用程序輸入、輸出設(shè)備消息隊(duì)列操作系統(tǒng)1234應(yīng)用程序、操作系統(tǒng)、輸入輸出設(shè)備交互圖8箭頭1表示操作系統(tǒng)能操縱輸出設(shè)備以執(zhí)行特定的功能,例如讓聲卡發(fā)出聲音,讓顯卡發(fā)出圖形。箭頭2表示操作系統(tǒng)能感知輸入設(shè)備狀態(tài)的變化,如鼠標(biāo)移動(dòng),鍵盤按下,并知道鼠標(biāo)移動(dòng)的具體位置,鍵盤按下的是哪一個(gè)字符。這就是操作系統(tǒng)和計(jì)算機(jī)硬件之間的交互關(guān)系。應(yīng)用程序開發(fā)者一般不需要知道具體的細(xì)節(jié),我們所關(guān)心的僅僅是操作系統(tǒng)和應(yīng)用程序之間的關(guān)系。9箭頭3表示應(yīng)用程序可以通知操作系統(tǒng)執(zhí)行某個(gè)具體的動(dòng)作,如操作系統(tǒng)能控制聲卡發(fā)出聲音,但它并不知道何時(shí)該發(fā)出何種聲音,需要應(yīng)用程序告訴操作系統(tǒng)該發(fā)出什么樣的聲音,這個(gè)關(guān)系好比有個(gè)機(jī)器人能夠完成行走的功能,但是如果人們不告訴他往哪個(gè)方向走,機(jī)器人是不會(huì)主動(dòng)行走的。這里的機(jī)器人就是操作系統(tǒng)。人們就是應(yīng)用程序。10那么應(yīng)用程序是如何通知操作系統(tǒng)執(zhí)行某個(gè)功能的呢?有過編程經(jīng)驗(yàn)的都知道,在應(yīng)用程序中要完成某個(gè)功能(function),都是以函數(shù)調(diào)用的形式實(shí)現(xiàn)的,同樣,應(yīng)用程序也是以函數(shù)調(diào)用的方式來通知操作系統(tǒng)執(zhí)行相應(yīng)的功能的。操作系統(tǒng)所能完成的每一個(gè)特殊功能通常都有一個(gè)函數(shù)與其對(duì)應(yīng),也就是說,操作系統(tǒng)把它所能完成的功能以函數(shù)的形式提供給應(yīng)用程序使用,應(yīng)用程序?qū)@些函數(shù)的調(diào)用就叫做系統(tǒng)調(diào)用,這些函數(shù)集合就是Windows操作系11統(tǒng)提供給應(yīng)用程序編程的接口(ApplicationProgrammingInterface)簡(jiǎn)稱API。如createwindow就是一個(gè)API函數(shù),應(yīng)用程序中調(diào)用這種函數(shù),操作系統(tǒng)就會(huì)按照該函數(shù)提供的參數(shù)信息產(chǎn)生一個(gè)相應(yīng)的窗口。12向上的箭頭4表示操作系統(tǒng)能夠?qū)⑤斎朐O(shè)備的變化上傳給應(yīng)用程序,如用戶在某個(gè)程序活動(dòng)時(shí)按了一下鍵盤,操作系統(tǒng)馬上就感知了這一事件,并且知道用戶按下的是哪個(gè)鍵,但操作系統(tǒng)并不決定對(duì)這一事件如何做出反應(yīng),而是將這一事件轉(zhuǎn)交給應(yīng)用程序,由應(yīng)用程序決定如何對(duì)這一事件做出反應(yīng)。好比有個(gè)蚊子叮了我們一口,我們的神經(jīng)末梢(相當(dāng)于操作系統(tǒng))馬上感知了這一事件,并傳遞給大腦(相當(dāng)于應(yīng)用程序),我們的大腦來決定如何對(duì)這一事件做出反應(yīng),如打死蚊子。對(duì)事件做出反應(yīng)的過程就是消息響應(yīng)。13操作系統(tǒng)如何將感知的事件傳遞給應(yīng)用程序的呢?這是通過消息機(jī)制來實(shí)現(xiàn)的。操作系統(tǒng)將每個(gè)事件都包裝成一個(gè)稱為消息的結(jié)構(gòu)體message來傳遞給應(yīng)用程序。對(duì)每一個(gè)應(yīng)用程序,操作系統(tǒng)都會(huì)給它建一個(gè)消息隊(duì)列(先進(jìn)先出的緩沖區(qū),通常是某種變量類型的數(shù)組),消息隊(duì)列中每一個(gè)元素都是消息,操作系統(tǒng)按消息產(chǎn)生的先后順序放入消息隊(duì)列中,應(yīng)用程序總?cè)£?duì)列中隊(duì)首消息,應(yīng)用程序取走消息,那么就知道用戶操作和程序狀態(tài)。例如wchar消息,從消息得知輸入了一個(gè)14字符,通過消息的附加參數(shù)知道是哪一個(gè)字符,應(yīng)用程序得到消息后就要對(duì)消息進(jìn)行處理(就是通常所說的消息響應(yīng)),消息響應(yīng)是通過編碼實(shí)現(xiàn)的,消息響應(yīng)代碼中可能包含操作系統(tǒng)的其它函數(shù)以完成一個(gè)特定的功能。例如收到窗口關(guān)閉的消息,會(huì)調(diào)用銷毀窗口這樣一個(gè)API函數(shù)去關(guān)閉窗口,或彈出一個(gè)消息框詢問用戶是否真關(guān)閉窗口。151VisualC++簡(jiǎn)介是Windows環(huán)境下最主要的應(yīng)用開發(fā)系統(tǒng)之一是C++語言的集成開發(fā)環(huán)境與Win32緊密相連(C++可以調(diào)用Win32提供的各種函數(shù))強(qiáng)大的調(diào)試功能為大型復(fù)雜軟件的開發(fā)提供了有效的排錯(cuò)手段2可視化指軟件開發(fā)階段的可視化利用計(jì)算機(jī)圖形技術(shù)和方法2.1VisualC++6.0簡(jiǎn)介及開發(fā)環(huán)境概述163開發(fā)環(huán)境開發(fā)環(huán)境是程序員同VC++的交互界面通過它,可以創(chuàng)建工程文件訪問資源編輯器使用內(nèi)部調(diào)試器訪問程序源代碼172.2菜單欄Edit菜單File菜單View菜單Insert菜單18Project菜單Build菜單Tools菜單Windows菜單19File->New->Files(1)VC++的菜單欄---File菜單20File->New->Projects21斷點(diǎn)作用:中斷程序的執(zhí)行過程,以便檢查程序代碼、變量和寄存器值位置斷點(diǎn)數(shù)據(jù)斷點(diǎn)消息斷點(diǎn)用來設(shè)置刪除和查看斷點(diǎn)(a)Breakpoints選項(xiàng)(2)VC++的菜單欄---Edit菜單22位置斷點(diǎn)通常在源代碼的指定行、函數(shù)的開始或指定的內(nèi)存地址處設(shè)置,當(dāng)程序執(zhí)行到指定位置時(shí),位置斷點(diǎn)將中斷程序的執(zhí)行在位置斷點(diǎn)中還可以設(shè)置斷點(diǎn)條件,此時(shí)必須先指定位置,然后再設(shè)置條件斷點(diǎn)數(shù)據(jù)斷點(diǎn)是在變量或表達(dá)式上設(shè)置,當(dāng)變量或表達(dá)式的值改變時(shí),數(shù)據(jù)斷點(diǎn)將中斷程序的執(zhí)行消息斷點(diǎn)是在窗口函數(shù)WndProc上設(shè)置,當(dāng)接收到指定的消息時(shí),消息斷點(diǎn)將中斷程序的執(zhí)行23(b)ListMembers選項(xiàng)利用此選項(xiàng),可減輕輸入代碼的工作量。如在變量名之后鍵入“.”或“->”,系統(tǒng)就會(huì)自動(dòng)顯示所有有效的成員名供選擇(c)TypeInfo選項(xiàng)
如果在源代碼中將鼠標(biāo)指針停在某一變量或函數(shù)上,那么系統(tǒng)將顯示所指變量或函數(shù)等的語法提供有效的成員名24(d)ParameterInfo選項(xiàng)
當(dāng)輸入代碼時(shí),若在輸入函數(shù)名之后鍵入左括號(hào),系統(tǒng)將顯示該函數(shù)的完整原型,并用黑體顯示其第一個(gè)參數(shù)。輸入第一個(gè)參數(shù)之后,接著就會(huì)出現(xiàn)第二個(gè)參數(shù),依此類推(e)CompleteWord選項(xiàng)
系統(tǒng)自動(dòng)完成當(dāng)前關(guān)鍵詞或語句其余部分的輸入。如果不能自動(dòng)完成,則給出適當(dāng)?shù)奶崾据o助用戶完成25在View菜單中可以:改變窗口改變工具欄的顯示方式檢查源代碼激活調(diào)試等View->ClassWizard選項(xiàng)(a)ClassWizard選項(xiàng)(3)VC++的菜單欄---View菜單26(b)ResourceSymbols選項(xiàng)
該選項(xiàng)將打開資源符號(hào)瀏覽器,從中可以瀏覽資源編輯符號(hào)資源編輯符號(hào)是映射到整數(shù)值上的一串字符,相當(dāng)于資源的一個(gè)代號(hào),在同一個(gè)程序中,資源編輯符號(hào)不能重復(fù)27(c)ResourceIncludes選項(xiàng)
該對(duì)話框包含資源符號(hào)頭文件名和預(yù)處理指令。28(d)Workspace選項(xiàng)
如果工作區(qū)沒有顯示或者不是處于當(dāng)前狀態(tài),則選擇該項(xiàng)將顯示工作區(qū)窗口。(e)Output選項(xiàng)
在輸出窗口中顯示程序建立過程(如編譯、鏈接等)的有關(guān)信息或錯(cuò)誤信息,并且顯示調(diào)試運(yùn)行時(shí)的輸出結(jié)果。29(a)NewClass選項(xiàng)該選項(xiàng)用來創(chuàng)建新類并添加到項(xiàng)目中(4)VC++的菜單欄---Insert菜單30使用Project可以創(chuàng)建、修改和存儲(chǔ)正在編輯的工程(項(xiàng)目)文件工程文件是一種機(jī)制,組合了一個(gè)應(yīng)用程序的所有源文件的組成部分。工程文件包含在擴(kuò)展名為.MAK的文件中。(5)VC++的菜單欄---Project菜單31(b)AddToProject選項(xiàng)
選擇該選項(xiàng)將打開一個(gè)級(jí)聯(lián)子菜單通過級(jí)連子菜單,可以把文件、文件夾、數(shù)據(jù)鏈接以及VC組件或控件添加到當(dāng)前工程文件中在該子菜單中可以進(jìn)行如下操作:(1)New:創(chuàng)建新的文件;(2)NewFolder:插入新的文件夾;(3)Files:插入已有文件;(4)DataConnection:添加數(shù)據(jù)鏈接;(5)ComponentandControls:通過該項(xiàng)將可以插入VC組件或者已注冊(cè)的ActiveX控件。插入時(shí)相當(dāng)于插入相關(guān)的頭文件(.h文件)和實(shí)現(xiàn)文件(.cpp文件),并且更新工作區(qū)窗口的信息。(a)SetActiveProject選項(xiàng)設(shè)定指定的項(xiàng)目為工作區(qū)的活動(dòng)項(xiàng)目32Build菜單用于編譯、建立和執(zhí)行應(yīng)用程序(b)Build選項(xiàng)對(duì)最后修改過的源文件進(jìn)行編譯和鏈接(a)Compile選項(xiàng)只編譯當(dāng)前文件而不調(diào)用鏈接器或其它工具。輸出窗口將顯示編譯過程檢查出的錯(cuò)誤或警告信息,在錯(cuò)誤信息處單擊鼠標(biāo)右鍵,可以得到錯(cuò)誤代碼的位置(c)
RebuildAll選項(xiàng)該選項(xiàng)允許用戶編譯和鏈接所有的源文件(包含資源文件),而不管它們何時(shí)曾經(jīng)被修改過(6)VC++的菜單欄---Build菜單33(d)BatchBuild選項(xiàng)
該選項(xiàng)能單步重新建立多個(gè)項(xiàng)目文件,并允許用戶指定要建立的項(xiàng)目類型Win32Release(發(fā)行版)、Win32Debug(調(diào)試版)。VC提供了兩種應(yīng)用程序類型34(e)
StartDebug選項(xiàng)從當(dāng)前語句開始執(zhí)行程序直到遇到斷點(diǎn)或遇到程序結(jié)束單步執(zhí)行程序,并在遇到函數(shù)調(diào)用時(shí)進(jìn)入函數(shù)內(nèi)部再從頭單步執(zhí)行使程序在運(yùn)行到當(dāng)前光標(biāo)所在位置時(shí)停止(相當(dāng)于設(shè)置一個(gè)臨時(shí)斷點(diǎn))調(diào)試過程中直接進(jìn)入到正在運(yùn)行的進(jìn)程中35
調(diào)試器
1.程序調(diào)試狀態(tài)的進(jìn)入使用具有調(diào)試功能的操作將使程序進(jìn)入調(diào)試狀態(tài),常用的辦法有:通過Build|StartDebug|Go或工具欄上的GO按扭運(yùn)行到斷點(diǎn)。通過Build|StartDebug|StepInto單步執(zhí)行程序。通過Build|StartDebug|StepOver單步執(zhí)行程序。通過Build|StartDebug|RuntoCursor運(yùn)行程序到光標(biāo)處。程序進(jìn)入調(diào)試狀態(tài)后,調(diào)試器自動(dòng)啟動(dòng)。在調(diào)試狀態(tài)下,Build菜單被Debug菜單替換,并且屏幕上出現(xiàn)調(diào)試工具欄。下面重點(diǎn)介紹一下調(diào)試信息的觀察。362.調(diào)試信息窗口的調(diào)出方式
調(diào)試過程中可能需要觀察變量或表達(dá)式的值,最簡(jiǎn)單的辦法是將鼠標(biāo)指在一個(gè)變量或事先選中的一段表達(dá)式上,稍微停留一會(huì)兒,屏幕上即顯示一個(gè)小的米黃色提示窗,顯示出變量或表達(dá)式的值(如圖所示)。37還可以使用觀察窗口(Watch)、變量窗口(Variables)和快速觀察窗口(QuitchWatch)來觀察、計(jì)算、甚至修改變量或表達(dá)式的值。下面是調(diào)出這個(gè)幾個(gè)窗口的方法:(1)View|DebugWindows|Watch:調(diào)出觀察窗口(2)View|DebugWindows|Variables:調(diào)出變量窗口(3)Debug|QuitchWatch:調(diào)出快速觀察對(duì)話框38調(diào)試器圖觀察窗口與變量窗口393.各調(diào)試信息窗口的用法觀察窗口(Watch)如圖所示,它有多個(gè)頁,通過底部的Watch1、Watch2、Watch3等選項(xiàng)卡進(jìn)行切換,當(dāng)被觀察的內(nèi)容很多時(shí),可安排在不同的頁內(nèi)進(jìn)行分頁顯示。用戶可單擊name下的空白行來增加觀察變量或表達(dá)式,也可以從源代碼窗口中選中一個(gè)變量或表達(dá)式,然后將其拖放到觀察窗口來增加一個(gè)觀察表達(dá)式(這里所說的表達(dá)式也含單個(gè)變量的情況,下同)。在觀察窗口中選中一行,然后按Delete鍵可刪除一個(gè)觀察表達(dá)式。也可以先選中一個(gè)觀察表達(dá)式然后輸入新內(nèi)容來修改一個(gè)觀察表達(dá)式。程序在調(diào)試過程中,觀察窗口內(nèi)容會(huì)自動(dòng)刷新,并且用紅色字體顯示剛被改變過的表達(dá)式的值。
40
若僅僅要觀察變量或?qū)ο蠖皇潜磉_(dá)式的值,變量窗口(Variables)會(huì)更加方便。變量窗口如圖所示,它有三個(gè)頁,Auto選項(xiàng)頁顯示程序中當(dāng)前執(zhí)行的語句及其之前的一些語句中所用到的變量。同時(shí),當(dāng)某個(gè)函數(shù)返回時(shí),顯示該函數(shù)的返回值。Locals選項(xiàng)頁中顯示的是當(dāng)前函數(shù)中的局部變量。this選項(xiàng)頁中顯示的是this指針當(dāng)前所指向的對(duì)象。
41圖快速觀察窗口
快速觀察對(duì)話框用于快速觀察變量或表達(dá)式的值,用Debug|QuitchWatch菜單可調(diào)出快速觀察對(duì)話框,其結(jié)構(gòu)如圖所示。42在Expression框中輸入待觀察的變量或表達(dá)式,單擊Recalculate按扭可立即計(jì)算出變量或表達(dá)式的值并顯示在下方窗口內(nèi),單擊AddWatch按扭可將變量或表達(dá)式添加到Watch窗口中。單擊Close按扭可關(guān)閉此對(duì)話框。另外,VC的調(diào)試窗口還有:寄存器窗口View|DebugWindows|Registers(顯示CPU的各個(gè)寄存器的值)內(nèi)存窗口View|DebugWindows|Memory(顯示指定內(nèi)存區(qū)域的內(nèi)容)調(diào)用堆棧窗口View|DebugWindows|CallStack(顯示當(dāng)前各個(gè)函數(shù)的調(diào)用關(guān)系及調(diào)用參數(shù))反匯編窗口View|DebugWindows|Disassembly(顯示VC語句對(duì)應(yīng)的匯編語言指令)43工具欄是一種圖形化的操作界面,具有直觀和快捷的特點(diǎn),熟練掌握工具欄的使用對(duì)提高編程效率非常有幫助。工具欄由某些操作按鈕組成,分別對(duì)應(yīng)著某些菜單選項(xiàng)或命令的功能。用戶可以直接用鼠標(biāo)單擊這些按鈕來完成指定的功能。2.3VisualC++6.0的工具欄44
1.工具欄的構(gòu)成如圖所示,工具欄位于菜單的下面。工具欄中的操作按鈕和菜單是相對(duì)應(yīng)的。VisualC++中包含有十幾種工具欄。默認(rèn)時(shí),屏幕工具欄區(qū)域顯示兩個(gè)工具欄,即“Standard”工具欄和“BuildMiniBar”工具欄。45
2.工具欄的定制與修改用戶可以根據(jù)自己的需要添加新的工具欄,或者對(duì)已有工具欄進(jìn)行修改,如添加新按鈕、刪除已有按鈕等。若需要添加工具欄,只需選擇Tools|Customize|Toolbars|New選項(xiàng),然后在對(duì)話框中輸入相應(yīng)的名字即可。46項(xiàng)目工作區(qū):VC++6.0以項(xiàng)目工作區(qū)的形式來組織文件、項(xiàng)目和項(xiàng)目配置。每個(gè)項(xiàng)目工作區(qū)由工作區(qū)目錄中的項(xiàng)目工作區(qū)文件組成。項(xiàng)目工作區(qū)文件(DSW)含有工作區(qū)的定義和項(xiàng)目中所包含文件的所有信息。項(xiàng)目:在使用VC++6.0編寫應(yīng)用程序時(shí),每個(gè)應(yīng)用程序就是一個(gè)項(xiàng)目。項(xiàng)目就是文件的集合,它包括了資源文件、頭文件、源代碼文件、程序結(jié)構(gòu)消息文件和系統(tǒng)參數(shù)設(shè)置文件。要編寫一個(gè)應(yīng)用程序就必須創(chuàng)建一個(gè)項(xiàng)目,它對(duì)應(yīng)的文件擴(kuò)展名為dsp,項(xiàng)目文件可以導(dǎo)出成MAK文件。2.4項(xiàng)目與項(xiàng)目工作區(qū)47在工作區(qū)中添加項(xiàng)目:
用File->Open選項(xiàng)可打開已存在的項(xiàng)目;通過New對(duì)話框的Projects選項(xiàng)卡創(chuàng)建新的項(xiàng)目,并選擇Addtocurrentworkspace復(fù)選框。
VC以項(xiàng)目工作區(qū)的形式來組織文件、項(xiàng)目和項(xiàng)目配置1.創(chuàng)建新的項(xiàng)目工作區(qū)創(chuàng)建新的空工作區(qū)步驟:(a)File->New->Workspaces->輸入工作區(qū)名字并指定工作區(qū)目錄2.4項(xiàng)目與項(xiàng)目工作區(qū)482.項(xiàng)目工作區(qū)窗口簡(jiǎn)介
VC項(xiàng)目工作區(qū)由ClassView、ResourceView及三個(gè)面板組成49圖形用戶界面中,將與用戶交互的界面元素稱為資源。資源包括菜單、對(duì)話框、圖標(biāo)、位圖、工具欄、加速鍵、串表等。在VC中,源代碼或資源編輯器為了引用資源和用戶自定義的其它對(duì)象,于是就引入了一種與資源一一對(duì)應(yīng)的符號(hào)即資源符號(hào),使之能夠以字符串的方式被引用。
資源符號(hào)是映射到整數(shù)值上的一串字符,是一種標(biāo)識(shí)符。每當(dāng)創(chuàng)建一個(gè)新的資源或資源對(duì)象時(shí),系統(tǒng)就會(huì)為其提供一個(gè)缺省的資源符號(hào)名稱并賦一個(gè)整數(shù)值,該定義保存在resource.h文件中。資源圖標(biāo)光標(biāo)菜單位圖對(duì)話框資源是一種界面元素,用戶可以從中獲得信息并在其中執(zhí)行某個(gè)動(dòng)作2.5資源及資源編輯器50單擊New按鈕新建資源符號(hào)輸入新資源符號(hào)的名稱由于資源符號(hào)不能重復(fù),因此應(yīng)按照一種標(biāo)準(zhǔn)來定義資源符號(hào)進(jìn)行符號(hào)定義View->ResourceSymbols(1)資源的建立51資源符號(hào)的取值范圍一般為0~32767(2)資源符號(hào)定義的常用前綴
52資源編輯器圖ResourceView頁VC中幾乎每種資源都對(duì)應(yīng)著一種編輯器,用于對(duì)這種資源的可視化編輯,而資源編輯器是這些專門編輯器的統(tǒng)稱。將工程工作空間窗口切換到ResourceView頁,可以看到工程內(nèi)的各種資源,如下圖所示。531.菜單編輯器在圖中,雙擊Menu下的菜單標(biāo)記(圖中為IDR_MAINFRAME,如果工程有多套菜單,則有多個(gè)標(biāo)記),在主窗口內(nèi)就會(huì)打開菜單編輯器,如下圖所示。使用菜單編輯器可完成菜單的可視化設(shè)計(jì)及有關(guān)屬性的靜態(tài)設(shè)置工作,詳細(xì)用法見后面章。圖菜單編輯器542.對(duì)話框編輯器在下圖中,按鼠標(biāo)右鍵單擊Dialog,在彈出的右鍵菜單中選擇“InsertDialog”,可向工程中插入一個(gè)對(duì)話框并打開對(duì)話框編輯器(如圖所示)。553.工具條編輯器
56
VC的窗口控制初學(xué)VC者覺得VC的窗口有時(shí)“亂跑”,有時(shí)又呆在一個(gè)地方“礙事”卻沒法移動(dòng)它。其實(shí)這是沒有掌握好“??浚―ocking)”型窗口的特點(diǎn)。在VC里面,有兩種窗口類型,一種窗口類型是文檔型窗口,另外一種窗口類型是??啃?Docking)窗口。文檔型窗口可以看作是各種文檔的容器,它的行為更像普通窗口,操作也只是一些普通的窗口操作,代碼編輯器(主窗口)就是一個(gè)典型的文檔型窗口;??啃痛翱谟泄こ坦ぷ骺臻g窗口(WorkSpace)、輸出窗口(Output)、觀察窗口(Watch)、變量窗口(Variables)、工具欄以及主菜單等。57
VC的窗口控制??啃痛翱诰哂袃煞N不同的狀態(tài),分別是停靠狀態(tài)和浮動(dòng)狀態(tài)。所謂停靠狀態(tài),是指窗口只能??吭谄聊坏乃膫€(gè)邊緣上,不能隨意移動(dòng),這時(shí)窗口沒有標(biāo)題條,但是有把手;所謂浮動(dòng)狀態(tài),是指窗口浮動(dòng)在其它窗口上,位置可以隨意移動(dòng),跟停靠狀態(tài)相反,這時(shí)窗口沒有把手,有標(biāo)題條。要移開停靠狀態(tài)的窗口,拖動(dòng)其把手即可。當(dāng)??康拇翱陔x開主窗口的邊框時(shí),它又變成浮動(dòng)狀態(tài),這時(shí)拖動(dòng)標(biāo)題欄可以移動(dòng)這種窗口。掌握了這一特性,可將這些小窗口隨意安排在主窗口中的空白處,以不妨礙源代碼的觀察58
VC的窗口控制圖??啃痛翱诘陌咽?9
VC的窗口控制
有時(shí)候不小心將窗口關(guān)閉了,卻不知如何再讓它出來,這時(shí)可用View|Workspace菜單使工程工作空間窗口顯示出來
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年西安長(zhǎng)安博雅小學(xué)教師招聘筆試參考題庫及答案解析
- 2026年輕松迎新年淡藍(lán)國潮故事
- 2026年電氣設(shè)備維護(hù)中的六西格瑪方法
- 2025年南昌留置看護(hù)筆試及答案
- 2025年太原師范教資筆試及答案
- 2025年湖北事業(yè)單位公務(wù)員考試及答案
- 2025年曹縣人事考試及答案
- 2025年湖北鐵路開發(fā)有限公司筆試及答案
- 2025年臨江市事業(yè)編考試題及答案
- 2025年人事助理招聘考試及答案
- 安裝吊扇施工方案
- 分紅、年金、萬能保險(xiǎn)測(cè)試題附答案
- GB/T 46456.3-2025信息技術(shù)設(shè)備互連智能家居互聯(lián)互通第3部分:局域互聯(lián)通用要求
- 家具拆單操作標(biāo)準(zhǔn)及流程指南
- 國家基層高血壓防治管理指南 2025版圖文解讀
- 小學(xué)數(shù)學(xué)長(zhǎng)度單位換算練習(xí)200題及答案
- 機(jī)器人工程技術(shù)人員筆試試題及答案
- GB/T 18344-2025汽車維護(hù)、檢測(cè)、診斷技術(shù)規(guī)范
- crm系統(tǒng)使用管理辦法
- 肝癌晚期護(hù)理常規(guī)課件
- 神經(jīng)外科VTE的預(yù)防及護(hù)理
評(píng)論
0/150
提交評(píng)論