版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、(程序設計實踐)任課教師:郭勇嗆爾濱工業(yè)大學軟件學院程序設計實踐目的:熟悉VC卄中各種資源。學會快速建立MFC應用程序學會基本的單文檔程序中菜單等的操作學會桌面應用程序的基本編寫方法掌握單文檔、多文檔及對話框應用程序的某本結構初步了解消息機制及事件的映射。環(huán)境: VisualStudio. net 或VC+6. 0知識要點:Windows應用程序一般都包含有眾多的圖形尤素,例如光標、位圖、對話框等,在 Windows環(huán)境卜每一個這樣的元索都是作為一種町裝入應用程序的資源來存放。所謂資源. 就是指用戶可從中獲得某種信息或進行某種操作的界面元素。Visual C卄應用程序中,資源與源代碼是分離的。
2、一方而,多個應用程序可以引用同 一資源定義:另一方啲,可以在不影響源代碼的情況卜編紺資源,或同時開發(fā)資源與源代碼. 縮短應用程序的開發(fā)時間。Windows環(huán)境下的資源主耍有以卞幾類:加速鍵(Accelerator : 系列按鍵組介,一般與菜單命令相連,作為選擇菜單命令 的快速方法,被應用程序用來引發(fā)一個動作。工具條(Toolbar):包含多個按鈕的組介,也被川來作為快速選擇菜單命令的方法。光標(Cursor) : 32*32像素的位圖,指示聯(lián)標的當前位置。對話框(Dialog):包含多種控件的窗II,與月戶完成交互功能。圖標(Icon):代表最小化窗I的位圖。菜單(Menu):以可視的方式捉供
3、了對應用甩序功能的選擇。字符串列表(StringTable):包含一系列的格式化文本。版本信息(Version):定義應用程序的版本,包含一系列格式化文本。這些所仔類型的資源都町以由Visual C+提供的淡源編輯器進行可視的編輯。+HMZ T-不 同類型的資源,Visual C+提供了不同種類的編輯器,如對話框編輯器、菜單編輯器、工具 條編輯器等等,這些編輯器的具體的使用方法將在介紹冇關內容的同時加以介紹。一.快速建立MFC應用:在VC60的集成開發(fā)環(huán)境的“File”菜單下冇“New”命令,用來建立各種新的內容。 選擇“File”菜單卜的“New”命令,彈出“New”對話框,如圖11所示。圖
4、1-1項目建立窗口1. 選擇應用程序界面的類型在“MFC AppWizard -Step 1”對話框中,主耍是選擇應用程序界面的類型和應用程序 資源的語言種類.如圖所示。圖1-2應用程序類型選擇窗在“Step 1”對話框屮,有三種應用程序類型可供選擇: 單文檔界面(SDI: Suigle DocumentIntei-face)應用程序:在程序的運彳j過程屮,每次 只能打開一個文檔。如果選擇程序“File”菜單卜的“New”命令或“Open”命令,程序首 先將關閉為前正在使用的文檔,然后才執(zhí)疔建新文檔或打開IH文檔的操作。Windows系 統(tǒng)附件中的記爭本就是一個典型的單文檔界面應用程序。 3
5、-嗆爾濱工業(yè)大學軟件學院程序設計實踐 女文檔界|僑(MDI: Multiple Document Interface) hY用程序:在程序運行時,允許同時 打開兩個或兩個以上的文檔。程序一般擁仃Window菜單以調整各文檔®IIZ間的位置關 系。Office系列中的Word組件就是一個肌型的多文檔界面應用程序。對話框形式的應用程序:程序的主要界面表現(xiàn)為一個對話框,可以使用対話框編輯器方 便地進行設計。作為一個簡單的例子程序,“Hello. World! ”程序只需要單文檔界血。在這里可選擇“Single Document"選項,然后選“Finish”按鈕即可,如想進一步細
6、化你的應用程序類型,可選“Net”按鈕,如想了解更多信息,請參考“VC+簡明教程PDN 文件中第1924頁。2. 程序編輯管理界面圖13應用程序編輯窗口程序說明,在MFC應用程序的文檔/視圖結構 CHelloApp:應用程序類 CMainFrame:主框架窗口類 CHelloDoc:文檔類,文檔類用來完成應用程序數(shù)據的存取工作。 CHelloView:視圖類,視圖類完成顯示數(shù)據和與使用者交互的工作。s CAboutDlg:版本信息對話框類InitInstance ()西數(shù)最示的匸作就是顯示和更新應用程序的窗I I。如果Initlnstance 0 函數(shù)屮所仃的初始化匸作均正確地進行,函數(shù)將返冋
7、TRUEo在執(zhí)行完初始化工作后,應用程 序將進入消息循壞,接收和處理系統(tǒng)發(fā)送來的各種消息,奩到應用程序被關閉。探 詳細信息請參考“VC+簡明教程.PDF”文件中第29-39頁。下而是自動生成的程序運行界面。嗆爾濱丁業(yè)大學軟件學院程序設計實踐-# -嗆爾濱丁業(yè)大學軟件學院程序設計實踐圖1-4程序運行界面3.給程序加入代碼3.1修改菜單項加入新菜單按圖5所示的操作加入新菜單.也可直接刪除仃來不用的菜單。圖15菜單嗚輯界面J-5 -嗆爾濱工業(yè)大學軟件學院程序設計實賤當進行菜單名稱輸入時.會彈出如圖1-6所示的粟單,按要求將名稱和ID輸入。菜單ID 的命名般是ID_MENUITEM_XXXX°
8、;其中“XXXX”是與菜單名稱相關的單詞。ICIIclloAppF|AJI class member CHclloAppjJ|Win32DcbuiQHbllo resources * Accelerator冬 IDR MAINFRAMF 二 J Dialog習 IDD ABOUTBOX =口 Icon IDR_HELLOTYPF IDR MAINFRAME £ MenuSj|lDR_MAINFRAMF J String Table4 String!-Tonlbar北 IDR IVersionG3 VS VIena立rt II) (StB I)(V)蔣GhQp :,Q劭建四C&
9、LTHJF(3).CulK)用存 S)Ctrl«另百為®打印(£)Ctrl+F刁換馳)打晦宜(X)皋近文件二? |llclloSJNg理Tx ex li esGeneralExtended StylesID: |ID.MFNUITFMARMAN 二 Cpiinn:屈書音理廠 Separator廠 Pop up廠 CheekedI GrayedHelp廠 Inactive Break: None、菜項的名稱-# -嗆爾濱工業(yè)大學軟件學院程序設計實賤-# -嗆爾濱工業(yè)大學軟件學院程序設計實賤Prompt圖16菜單編輯界面;3.2給菜單項加入響應搐數(shù)進入代碼編輯窗口,點
10、擊右犍,如圖7所示,選擇類向導"ClassWizard"項,圖1-7類生成向導會彈出如卜所示的MFC類向導對話框,然后按如圖1-8所示步驟操作。圖18添加菜單函數(shù)1. 確認選擇的是Message Maps標簽。2. 在Object IDs窗I中找到你加入的菜單的ID。3. 在Class Name組合框中選擇將菜單対丿衛(wèi)的代碼加入的文件。繪終代碼會加入到你選擇 的這個文件中。4. 在 Nessages 窗 I I 中選擇 COMMAND 項。5. 點擊"Add卩unction"按鈕6. 在"Member function name: °
11、卜面的編輯框中諭入生成的換數(shù)的名稱,也可以用默認 的名字。7. 點擊0K按鈕,函數(shù)加入完畢。顯示9所示對話框。圖19菜單函數(shù)添加完畢此時“Edit Code”按鈕為町操作狀態(tài),我明函數(shù)已加入完畢,町點擊此按鈕進入代碼屮,-7 -嗆爾濱工業(yè)大學軟件7院程序設計實踐加入必要的代碼。如圖10代碼編輯窗I lo圖110代碼編輯窗II加入代碼:MessageBoxC執(zhí)行了圖站管理菜單你好:MB_0K;在圖屮所示位覧 然后運行 程序,可觀察到菜單執(zhí)行結果。二.加入對話框資源1下面介紹一下如何加入一個對話框資源。按如圖所示操作,選擇Inserto圖2-1添加對話框9嗆爾濱工業(yè)大學軟件學院程序設計實踐彈出如圖
12、2-2所示的對話框.選擇Dialog然后按N紳按鈕 對話框IDD.DIAL0G1已加入到資源中了。,就會出現(xiàn)如圖2-3所示的界面.Insert Resource叼FUsoince lype:W Accelerator催I Bitmap »Cursor CfflIEHD D D D D D idqqidqidvilm rmmrmETHTICQn4DIALOGBAR English (U.SJ FORMVIEW English (U.S.| OLE_PROPPAG匚_LARGE Eng 0 LE_PRO PPAGE_S MALL Eiiy PHOPPAGt_LARGt tnglish (
13、 PROPPAGE_MEDIUM English PROPPAGE SMALL English (Import.圖2-2添加對話框操作窗口圖2-3添加對話框操作窗LI現(xiàn)在該対話框還沒冇対應的類,所以必須加入必耍的類才能對其進行齊種操作。雙擊0K按 鈕,選擇"Create a new class",然后選擇OK加入類,出現(xiàn)如圖2-4所示界面。輸入有 一定含意的類的名稱,如圖2-4所示輸入了 CGy (這個類名耍根據實際情況自C定義),此時 系統(tǒng)會口動指定源程序文件名為Gy. eppo哈爾濱丁業(yè)大學軟件學院程序設訃實踐2-4創(chuàng)建對話框対應的類2.通過編程在菜單操作中打開此対話框
14、,方法如F在圖110所示的代碼編輯窗口中的菜單函數(shù)中加入如下代碼。void CMainFrame: : OnMenuitemLabman 0/ TODO: Add your command handler code hereCGy cGy;cGy. DoModal0;并將“gy.h”文件加入MainFrame. cpp中。運行程序,執(zhí)行菜單操作,就可看到打開的對話 框了。顯示此對話框的貝體操作:運行程序,顯示如圖2-1所示界而,然后執(zhí)菜巾“圖書管理”,對話 框就會顯示出來。詳細信息請參考“VC+簡明教程.PDF”文件中62-72頁D/.xh* - Huiio口叵區(qū)l|仝咅迎weoi&)
15、«i®QyCtrBl$JJJfOJ .doClrlSITW®Ctrl*r仃仃.如圖2-4程序運行界面三.在對話框中加入其他資源久加入編輯框首先打開前面加入的對話框,會門動出現(xiàn)一個控件IJ!條,可選擇里面的以種控件,加入到 對話框屮。如圖3-1所示。關于控件的具體內容請參考“VC+簡明教程.PDF”文件中58-62 頁。如圖3-1程序運行界面2獲取編輯框中輸入的內容仃兩種方式獲取文本,一種是通過定義變駅的方式,另一種是何接使用命令。卜血簡甲 說一下肖接使用命令的方式。首先要知道已輸入文本的編輯框的ID,假設編紺框ID為IDC_EDIT:L卜面二條語句 完成的是將編輯框中輸入的文本內容,讀到了變strBuf屮,具中100是指定的讀取長度. 如果輸入框中文木小J:此值則所冇內容全部讀到strBuf中,否則按指定的長度讀取。char strBuf101,GetDlgItemText(IDC_EDIT 1 ,LPTSTR(strBuf),l 00),3 將文本讀入編輯框中通過卜面兩條語句就可將strBuf中的內容讀到IDC_EDIT1這個編輯框中。char strBuf 101=?,哈爾濱工業(yè)大學圖書館”,S etD 1 gItemText
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024個人車位租賃合同范本
- 智能決策支持系統(tǒng)在數(shù)字化農業(yè)中的持續(xù)優(yōu)化與升級
- 蘇州科技大學天平學院《消費者行為學》2023-2024學年第一學期期末試卷
- 2024店鋪租賃合同樣本
- 光學儀器在海洋能源中的應用案例考核試卷
- 建筑物拆除風險分析考核試卷
- 住宅電氣安裝工程管理考核試卷
- 人事行政培訓工作滿意度與員工福利考核試卷
- 制鞋業(yè)的市場在線銷售與電子商務策略案例分析報告考核試卷
- 個人抵押房屋借款合同
- 健康管理的四大關鍵飲食、運動、休息、心理
- 住院醫(yī)師規(guī)范化培訓臨床操作技能床旁教學指南(2021年版)全面解讀
- 教學查房-胃癌
- 幼兒園大班《種植》教案分享帶動畫
- 2023超星爾雅-大學生創(chuàng)新基礎-馮林全部答案
- 趙珍珠《商業(yè)銀行-金融企業(yè)會計》第二版課后參考答案 (第二到十一章)
- 大班科學《紅薯現(xiàn)形記》課件
- GB/T 43336-2023舵輪控制系統(tǒng)通用技術條件
- JGJT294-2013 高強混凝土強度檢測技術規(guī)程
- 2022-2023學年天津市某中學高三上學期第二次月考英語試題(解析版)
- 揚州某校2023-2024蘇教版五年級上冊數(shù)學期中課堂練習及答案
評論
0/150
提交評論