修改主窗口風(fēng)格_第1頁
已閱讀1頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、VisualC編程的若干技巧VisualC是一種面向?qū)ο蟮目梢暬幊坦ぞ撸峁┑腁ppWizard能自動生成應(yīng)用程序的標準框架,大大減輕了編程的工作量。但是,由于生成的應(yīng)用程序框架使程序的用戶界面和程序結(jié)構(gòu)都只能具有標準形式,而在實際的程序設(shè)計中,又常常需要設(shè)計一些非標準的應(yīng)用程序,或?qū)崿F(xiàn)一些特別的功能或操作。因此使用一些技巧來修改應(yīng)用程序框架,以得到所需的應(yīng)用效果,便很有使用價值。本文將主要介紹如下的編程技巧:修改主窗口風(fēng)格、創(chuàng)建不

2、規(guī)則形狀窗口、用鼠標單擊窗口標題條以外區(qū)域移動窗口、使用上下文菜單、使應(yīng)用程序只能運行一個實例、使應(yīng)用程序顯示為任務(wù)條通知區(qū)中的圖標和顯示旋轉(zhuǎn)文本等。1.修改主窗口風(fēng)格AppWizard生成的應(yīng)用程序框架的主窗口具有缺省的窗口風(fēng)格,比如在窗口標題條中自動添加文檔名、窗口是疊加型的、可改變窗口大小等。要修改窗口的缺省風(fēng)格,需要重載CWnd::PreCreateWindow(CREATESTRUCT創(chuàng)建窗口的基本參數(shù)HLEhInstance

3、擁有將創(chuàng)建的窗口的模塊實例句柄HMENUhMenu新窗口的菜單句柄HWNDhwndParent新窗口的父窗口句柄intcy新窗口的高度intcx新窗口的寬度inty新窗口的左上角Y坐標intx新窗口的左上角X坐標LONGstyle新窗口的風(fēng)格LPCSTRlpszName新窗口的名稱LPCSTRlpszClass新窗口的窗口類名DWDdwExStyle新窗口的擴展參數(shù)CRgn提供了CreateRectRgn、CreateEllipticR

4、gn和CreatePolygonRgn成員函數(shù),分別用以創(chuàng)建矩形、(橢)圓形和多邊形區(qū)域。創(chuàng)建非矩形窗口的方法如下:首先,在窗口類中定義區(qū)域類成員數(shù)據(jù)(如CRgnm_rgnWnd);其次,在窗口的OnCreate函數(shù)或?qū)υ捒虻腛nInitDialog函數(shù)中調(diào)用CRgn類的CreateRectRgn、CreateEllipticRgn或CreatePolygonRgn函數(shù)創(chuàng)建所需的區(qū)域,并調(diào)用SetWindowRgn函數(shù)。下例將生成一個橢

5、圓窗口。1.在DeveloperStudio中選取File菜單中的New命令,在出現(xiàn)的New對話框中選擇創(chuàng)建MFCAppWizard(exe)框架應(yīng)用程序,并輸入項目名為EllipseWnd。設(shè)定應(yīng)用程序類型為基于對話框(Dialogbased),其它選項按缺省值創(chuàng)建項目源文件。2.使用資源編輯器從主對話框(ID為IDD_ELLIPSEWND_DIALOG)刪除其中的所有控制,并從其屬性對話框(DialogProperties)中設(shè)定其

6、風(fēng)格為Popup、無標題條和邊框。3.在EllipseWndDlg.h源文件中給主對話框類CEllipseWndDlg增加一個CRgn類保護型數(shù)據(jù)成員m_rgnWnd,它將定義窗口的區(qū)域。4.在EllipseWndDlg.cpp源文件中修改主對話框類CEllipseWndDlg的OnInitDialog()函數(shù),增加m_rgnWnd的創(chuàng)建,并將其定義為窗口區(qū)域。粗體語句為新增部分。BOOLCEllipseWndDlg::OnInitDi

7、alog()CDialog::OnInitDialog()Add“About...“menuitemtosystemmenu.IDM_ABOUTBOXmustbeinthesystemcommrange.ASSERT((IDM_ABOUTBOXASSERT(IDM_ABOUTBOX0xF000)CMenupSysMenu=GetSystemMenu(FALSE)if(pSysMenu!=NULL)CStringstrAboutMenus

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論