版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第十三講:應(yīng)用程序外觀設(shè)計(jì),楊章偉 e-mail:,課程內(nèi)容安排,修改Windows應(yīng)用程序外觀 制作動(dòng)畫圖標(biāo) 設(shè)置圖片背景 綜合練習(xí) 思考和習(xí)題,修改應(yīng)用程序外觀樣式,可以通過不同的方法來修改應(yīng)用程序的背景、標(biāo)題、光標(biāo)、圖標(biāo)以及框架是否具有最大、最小對(duì)話框等信息。由于視圖類覆蓋在框架窗口上,因此通常在MainFrame中修改圖標(biāo)、標(biāo)題及是否具有最大、最小框的屬性;而背景及光標(biāo)等信息就需要在View類中修改 。,Visual C+應(yīng)用程序中的序列化是通過CArchive類來實(shí)現(xiàn)的。CArchive類總是與一個(gè)CFile對(duì)象相關(guān)聯(lián),CArchive類是作為CFile對(duì)象的輸入輸出流而設(shè)計(jì)的,如圖
2、12-2所示,其使用經(jīng)過重載的C+流入()操作符,從存儲(chǔ)應(yīng)用程序數(shù)據(jù)的文件中實(shí)現(xiàn)讀取和寫入數(shù)據(jù),而將這些數(shù)據(jù)保存到磁盤文件中的工作由CArchive對(duì)象指示CFile對(duì)象來完成。,在框架類中修改程序外觀,在框架類中修改程序外觀 ,主要是在MainFrame中修改圖標(biāo)、標(biāo)題及是否具有最大、最小框的屬性等實(shí)現(xiàn)。事實(shí)上,框架類中包含了許多定義應(yīng)用程序框架的成員函數(shù),新建一個(gè)工程后打開工作區(qū)的框架類,可看到如圖13-1所示的成員函數(shù)。,例如,去掉應(yīng)用程序窗口最大化按鈕,添加用戶自定義標(biāo)題。 BOOL CMainFrame:PreCreateWindow(CREATESTRUCT ,利用GetClass
3、Info函數(shù)修改應(yīng)用程序外觀樣式,BOOL CMainFrame:PreCreateWindow(CREATESTRUCT ,在CMainFrame: OnCreate中修改,利用SetWindowLong函數(shù)實(shí)現(xiàn)去掉窗口的最大化按鈕。 int CMainFrame:OnCreate(LPCREATESTRUCT lpCreateStruct) SetWindowLong(m_hWnd,GWL_STYLE, :GetWindowLong(m_hWnd,GWL_STYLE) ,在視圖類中修改程序外觀,視圖類CxxxView類是顯示應(yīng)用程序框架的主體部分,在視圖類中修程序外觀可通過成員函數(shù)PreC
4、reateWindow、AfxRegisterWndClass函數(shù)和OnCreate函數(shù)實(shí)現(xiàn)。,修改應(yīng)用程序背景及光標(biāo)樣式。在CMyView:PreCreateWindow中利用AfxRegisterWndClass函數(shù)可以修改應(yīng)用程序的背景和光標(biāo)樣式。 BOOL CMyView:PreCreateWindow(CREATESTRUCT ,制作動(dòng)畫圖標(biāo),Visual C+除了能夠修改應(yīng)用程序的外觀樣式,還能夠制作動(dòng)畫圖標(biāo)。 該實(shí)例將使應(yīng)用程序框架上的圖標(biāo)不斷的變化,當(dāng)然,用到的圖標(biāo)是事先復(fù)制到文件夾,存儲(chǔ)圖標(biāo)的文件夾為工程名res文件夾。讀者在該工程的資源面板中只要導(dǎo)入這些圖標(biāo)就可以了,不需要
5、自己再動(dòng)手畫一些圖標(biāo)了。,代碼清單,int CMainFrame:OnCreate(LPCREATESTRUCT lpCreateStruct) m_hIcon0=AfxGetApp()-LoadIcon(IDI_ICON1); /加載圖標(biāo)資源 m_hIcon1=AfxGetApp()-LoadIcon(IDI_ICON2); m_hIcon2=AfxGetApp()-LoadIcon(IDI_ICON3); m_hIcon3=LoadIcon(AfxGetApp()-m_hInstance,MAKEINTRESOURCE(IDI_ICON4); m_hIcon4=LoadIcon(AfxGe
6、tInstanceHandle(),MAKEINTRESOURCE(IDI_ICON5); SetClassLong(m_hWnd,GCL_HICON,(LONG)m_hIcon0); /改變框架的圖標(biāo) SetTimer(1,500,NULL);/設(shè)立計(jì)時(shí)器 return 0; void CMainFrame:OnTimer(UINT nIDEvent) / TODO: Add your message handler code here and/or call default static int iIndex=0; iIndex=+iIndex%5;/設(shè)置變換時(shí)間 SetClassLong
7、(m_hWnd,GCL_HICON,(LONG)m_hIconiIndex); CFrameWnd:OnTimer(nIDEvent);/執(zhí)行事件 CFrameWnd:OnTimer(nIDEvent); ,設(shè)置圖片背景,本節(jié)將介紹如何將一幅位圖(.bmp文件)作為窗口顯示的背景。一般來說,將一幅位圖選做窗口背景都經(jīng)過以下幾個(gè)步驟: (1)創(chuàng)建一個(gè)兼容設(shè)備描述表。 (2)創(chuàng)建及裝入位圖資源。 (3)將位圖選入兼容設(shè)備描述表。 (4)將兼容設(shè)備描述表上的內(nèi)容復(fù)制到當(dāng)前設(shè)備描述表上。,代碼清單,為應(yīng)用程序設(shè)置背景圖片 void CMyView:OnDraw(CDC* pDC) CMyDoc* pD
8、oc = GetDocument(); ASSERT_VALID(pDoc); / TODO: add draw code for native data here CDC dcCompatible; /產(chǎn)生一個(gè)兼容DC dcCompatible.CreateCompatibleDC(pDC);/創(chuàng)建及裝入位圖資源 CBitmap bmp; bmp.LoadBitmap(IDB_BITMAP1); dcCompatible.SelectObject( ,綜合練習(xí),設(shè)計(jì)一個(gè)應(yīng)用程序界面,要求該界面使用用戶自定義的圖標(biāo),去掉最大化按鈕,并設(shè)置程序標(biāo)題為“應(yīng)用程序外觀設(shè)計(jì)”,其背景為藍(lán)色,如圖13-18所示。,思考和習(xí)題,為什么要修改應(yīng)用程序的外觀? Visual C+的應(yīng)用程序中
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 工程委托承接協(xié)議書
- 高層寫字樓買賣協(xié)議書
- 宿遷廠房造價(jià)咨詢協(xié)議書
- 國(guó)標(biāo)視頻協(xié)議書接口類型
- 基礎(chǔ)護(hù)理中的倫理考量
- 藥物安全管理與患者護(hù)理
- 護(hù)理倫理與臨床研究
- 護(hù)理umentation:記錄與溝通
- 手術(shù)后病人早期康復(fù)鍛煉計(jì)劃
- 2025年智慧農(nóng)業(yè)項(xiàng)目實(shí)施合同協(xié)議
- GB/T 31970-2025汽車氣壓制動(dòng)鉗總成性能要求及臺(tái)架試驗(yàn)方法
- 高速消防安全知識(shí)培訓(xùn)課件
- 光纜成纜工作業(yè)指導(dǎo)書
- 社區(qū)矯正培訓(xùn)課件教學(xué)
- 測(cè)評(píng)題庫及答案京東
- 行政事務(wù)處理員高級(jí)工工勤技師迎考測(cè)試題及答案-行政事務(wù)人員
- 瀝青混凝土供貨方案及保障措施
- 鵬城實(shí)驗(yàn)室雙聘管理辦法
- 船舶設(shè)備故障預(yù)測(cè)模型及維護(hù)優(yōu)化策略
- 國(guó)家開放大學(xué)《商務(wù)英語1》形考任務(wù)綜合測(cè)試答案
- 監(jiān)理廉潔自律培訓(xùn)
評(píng)論
0/150
提交評(píng)論