freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

vc實(shí)驗(yàn)手冊(cè)-wenkub

2023-07-11 00:27:07 本頁(yè)面
 

【正文】 )。參數(shù)nFlags 指明鼠標(biāo)按鍵的狀態(tài)以及鼠標(biāo)事件發(fā)生時(shí)鍵盤(pán)上某些鍵的狀態(tài),每一狀態(tài)都可以用nFlags 的一位來(lái)表示,具體含義見(jiàn)下表:c) 窗口消息窗口消息一般與創(chuàng)建窗口、繪制窗口、移動(dòng)窗口和銷(xiāo)毀窗口等動(dòng)作有關(guān)。我們以處理鼠標(biāo)左鍵按下消息的函數(shù)OnLButtonDown( )為例來(lái)進(jìn)行說(shuō)明。?? WM_RBUTTONDOWN:鼠標(biāo)右鍵按下時(shí)產(chǎn)生的消息。我們以WM_CHAR 消息的處理函數(shù)OnChar( )為例來(lái)進(jìn)行說(shuō)明。常見(jiàn)的鍵盤(pán)消息有以下幾種。MFC 類(lèi)庫(kù)以消息名為基礎(chǔ)形成這些處理函數(shù)的名稱(chēng),這些函數(shù)的名稱(chēng)都以前綴“On”開(kāi)始。Windows 消息主要有3 種類(lèi)型,即標(biāo)準(zhǔn)Windows 消息、控件消息和命令消息。MFC 首先調(diào)用CWinApp 類(lèi)的成員函數(shù)ExitInstance( ),然后調(diào)用靜態(tài)對(duì)象的析構(gòu)函數(shù),包括CWinApp 對(duì)象,最后退出應(yīng)用程序,將控制權(quán)交給操作系統(tǒng)。這時(shí)將自動(dòng)調(diào)用應(yīng)用程序類(lèi)的構(gòu)造函數(shù)初始化對(duì)象theApp,然后由應(yīng)用程序框架調(diào)用MFC 提供的AfxWinMain( )主函數(shù)。8. CFrameWnd類(lèi)CFrameWnd類(lèi)往往用于創(chuàng)建應(yīng)用程序的主窗口,并定義了大量管理視圖和文檔對(duì)象的成員函數(shù)及變量。6. CWnd類(lèi)CWnd類(lèi)是所有MFC 窗口的基類(lèi),它封裝了窗口的基本操作,包括窗口的創(chuàng)建、銷(xiāo)毀、設(shè)置窗口風(fēng)格等,以及窗口對(duì)大部分消息的默認(rèn)響應(yīng)。建立文檔模板結(jié)構(gòu)。每個(gè)MFC應(yīng)用程序都至少應(yīng)該使用一個(gè)從CWinThread派生的類(lèi),應(yīng)用程序類(lèi)CWinApp就是一個(gè)代表。MFC框架結(jié)構(gòu)如下圖所示:1. CObject類(lèi)CObject類(lèi)是MFC類(lèi)庫(kù)的根類(lèi),它幾乎描述了MFC類(lèi)的一些公共特性。216。 Windows定義了成百上千個(gè)不同的消息類(lèi)型。窗口過(guò)程函數(shù)處理發(fā)送給窗口的消息。對(duì)于普通用戶(hù)來(lái)說(shuō),Windows圖形化界面友好、操作簡(jiǎn)單,用戶(hù)不需要花費(fèi)長(zhǎng)時(shí)間學(xué)習(xí)如何使用計(jì)算機(jī)和新程序,因?yàn)樗械腤indows應(yīng)用程序都具相近的外觀和感覺(jué);對(duì)于程序員來(lái)說(shuō),標(biāo)準(zhǔn)化的圖形用戶(hù)界面來(lái)自于Windows構(gòu)造菜單和對(duì)話(huà)框的內(nèi)置程序,這些工作由Windows處理,與應(yīng)用程序無(wú)關(guān),使程序員可以編寫(xiě)出易于用戶(hù)操作的程序。l VS2005集成開(kāi)發(fā)環(huán)境。實(shí)驗(yàn)一、HelloWorld在VS2005上的實(shí)現(xiàn)l 掌握Windows程序基本的運(yùn)行原理。l 用Windows API(SDK)實(shí)現(xiàn)圖形化HellowWorld程序。l Windows編程模型Windows程序采用如下圖所示的事件驅(qū)動(dòng)編程模型,應(yīng)用程序通過(guò)處理操作系統(tǒng)發(fā)送出來(lái)的消息來(lái)響應(yīng)事件。WinMain創(chuàng)建該窗口并進(jìn)入消息循環(huán),即獲取消息或?qū)⑵湔{(diào)度給窗口過(guò)程。大多數(shù)消息的開(kāi)始字符為“WM”并帶有下劃線(xiàn);216。 操作系統(tǒng)把它所能夠完成的功能以函數(shù)的形式提供給應(yīng)用程序使用,應(yīng)用程序?qū)@些函數(shù)的調(diào)用就叫做系統(tǒng)調(diào)用,這些函數(shù)的集合就是Windows操作系統(tǒng)提供給應(yīng)用程序編程的接口(Application Programming Interface),簡(jiǎn)稱(chēng)Windows API(C函數(shù))。2. CCmdTarget類(lèi)CCmdTarget類(lèi)是MFC的消息映射基礎(chǔ)類(lèi),MFC為該類(lèi)設(shè)計(jì)了許多的成員變量及函數(shù)以解決消息映射的問(wèn)題。4. CWinApp類(lèi)CWinApp類(lèi)通常代表應(yīng)用程序自己,它封裝了應(yīng)用程序的初始化、運(yùn)行及終止的過(guò)程。循環(huán)檢索消息隊(duì)列中的消息并將這些消息發(fā)送到指定的地方。開(kāi)發(fā)人員可以直接從CWnd派生其他類(lèi),但通常情況下我們并不這么做,而是通過(guò)繼承CWnd的派生類(lèi)生成新類(lèi)。在編寫(xiě)文檔/視圖結(jié)構(gòu)的應(yīng)用程序時(shí),視圖對(duì)象等將作為CFrameWnd的子窗口實(shí)現(xiàn)對(duì)客戶(hù)區(qū)的共享,并被CFrameWnd有序排列。在AfxWinMain( )主函數(shù)中,首先通過(guò)調(diào)用全局函數(shù)AfxGetApp( )來(lái)獲取theApp 的指針pApp,然后通過(guò)該指針調(diào)用theApp 的成員函數(shù)InitInstance( )來(lái)初始化應(yīng)用程序。任何—個(gè)對(duì)象都可以通過(guò)調(diào)用全局函數(shù)AfxGetApp( )或AfxGetInstanceHandle( )來(lái)獲取應(yīng)用程序?qū)ο螅煌ㄟ^(guò)調(diào)用全局函數(shù)AfxGetMainWnd( )來(lái)獲得程序主窗口。1. 標(biāo)準(zhǔn)Windows 消息除 WM_COMMAND 以外,所有以“WM_”為前綴的消息都是標(biāo)準(zhǔn)Windows 消息。有的處理函數(shù)不帶參數(shù),有的帶幾個(gè)參數(shù)。?? WM_KEYDOWN、WM_KEYUP:按下、釋放非系統(tǒng)鍵產(chǎn)生的消息。此函數(shù)的原型如下:afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)。?? WM_LBUTTONDOWN:鼠標(biāo)左鍵按下時(shí)產(chǎn)生的消息。此函數(shù)的原型如下:afx_msg void OnLButtonDown(UINT nFlags,CPoint point)。在 MFC 應(yīng)用程序中,窗口消息是由視圖類(lèi)、窗口類(lèi)及它們的派生類(lèi)處理的。?? WM_TIMER:每當(dāng)計(jì)時(shí)器被觸發(fā)時(shí),系統(tǒng)就發(fā)送WM_TIMER 消息。發(fā)送控件消息的控件使用唯一的ID 號(hào)來(lái)識(shí)別,使用控件類(lèi)來(lái)操縱。l MFC消息映射機(jī)制MFC 采用消息映射來(lái)處理消息。為了使用消息映射宏,首先在類(lèi)定義的結(jié)尾用 DECLARE_MESSAGE_MAP( )宏來(lái)聲明使用消息映射,該宏表示在為各個(gè)處理函數(shù)所寫(xiě)的類(lèi)聲明之后存在消息映射條目,這些函數(shù)是該類(lèi)的成員函數(shù)。在編寫(xiě)Windows應(yīng)用程序時(shí)候可以借助MSDN查閱相關(guān)Windows API(Platform SDK)和MFC基礎(chǔ)類(lèi)(Microsoft Foundation Class Library)的詳細(xì)用法。 Windows程序的入口函數(shù):我們編寫(xiě)過(guò)Win32控制臺(tái)程序,這種程序的唯一入口為main()函數(shù),那么對(duì)于Windows應(yīng)用程序,它的入口函數(shù)為WinMain(),由操作系統(tǒng)調(diào)用。 //窗口風(fēng)格 WNDPROC lpfnWndProc。 //實(shí)例句柄 HICON hIcon。 //窗口類(lèi)菜單 LPCTSTR lpszClassName。l 注冊(cè)窗口類(lèi):調(diào)用RegisterClass()函數(shù)注冊(cè)窗口,函數(shù)原型如下:ATOM RegisterClass( CONST WNDCLASS *lpWndClass )。216。msg,NULL,0,0)) //獲取消息{TranslateMessage(amp。 //發(fā)送消息給窗口過(guò)程}Msg變量為MSG結(jié)構(gòu)體類(lèi)型,類(lèi)型定義如下:typedef struct tagMSG { HWND hwnd。 DWORD time。 頭文件包含在每一個(gè)Windows程序C語(yǔ)言編寫(xiě)的Windows程序都可以看到include。216。 //窗口句柄 MSG msg。 = ( HBRUSH)GetStockObject( WHITE_BRUSH )。 = WinLiuProc。 //注冊(cè)窗口類(lèi) RegisterClass(amp。 //更新窗口 UpdateWindow(hwnd)。 //將消息發(fā)送給窗口過(guò)程 DispatchMessage(amp。 sprintf(szChar,鍵盤(pán)按鍵按下)。 HDC hdc。 break。 RECT rect。 GetClientRect(hwnd, amp。 EndPaint(hwnd, amp。//系統(tǒng)發(fā)出一個(gè)WM_DESTROY消息。 //其它消息使用默認(rèn)的窗口過(guò)程處理函數(shù)執(zhí)行 default: return DefWindowProc(hwnd,uMsg,wParam,lParam)。class CMainWindow:public CFrameWnd{public: CMainWindow()。 //應(yīng)用程序?qū)ο?/CMyApp member functionsBOOL CMyApp::InitInstance(){ m_pMainWnd = new CMainWindow。}//CMainWindow 消息映射宏BEGIN_MESSAGE_MAP(CMainWindow,CFrameWnd) ON_WM_PAINT()END_MESSAGE_MAP()CMainWindow::CMainWindow(){ Create(NULL,_T(The Hello Program,MFC style))。rect)?!拔沂浅绦騿T”,并將窗口的標(biāo)題欄改為:MyProg。l VS2005集成開(kāi)發(fā)環(huán)境。應(yīng)用程序可以使用GDI創(chuàng)建3種類(lèi)型的圖像:1. 適量圖形:如各種集合圖形。設(shè)備環(huán)境,DC 也稱(chēng)設(shè)備描述表或設(shè)備上下文。(3) 保存當(dāng)前信息,例如當(dāng)前的畫(huà)筆、畫(huà)刷、字體和位圖等圖形對(duì)象及其屬性,以及顏色和背景等影響圖形輸出的繪圖模式。CClientDC代表窗口客戶(hù)區(qū)的設(shè)備環(huán)境,一般在響應(yīng)非窗口消息并對(duì)客戶(hù)區(qū)繪圖時(shí)要用到該類(lèi)。任何一種顏色都是由紅、綠、藍(lán)3 種基本顏色組成的,COLORREF 類(lèi)型數(shù)據(jù)的低位字節(jié)存放紅色強(qiáng)度值,第2 個(gè)字節(jié)存放綠色強(qiáng)度值,第3個(gè)字節(jié)存放藍(lán)色強(qiáng)度值,高位字節(jié)為0,每一種顏色分量的取值范圍為0~255。表33 列出了一些常用顏色的RGB 值。 //定義灰色pDCSetBkColor(rgbBkClr)。如果要使用不同風(fēng)格和顏色的繪圖工具進(jìn)行繪圖,用戶(hù)必須重新為設(shè)備環(huán)境設(shè)置自定義的畫(huà)筆和畫(huà)刷等繪圖工具。MFC 對(duì)GDI 對(duì)象進(jìn)行了很好的封裝,提供了封裝GDI 對(duì)象的類(lèi)。2. CBrush類(lèi):裝GDI 畫(huà)刷。用戶(hù)可以建立一種GDI 字體,并使用CFont 的成員函數(shù)來(lái)訪(fǎng)問(wèn)它。5. CPalette 類(lèi):封裝GDI 調(diào)色板。CRgn 用于設(shè)備環(huán)境(通常是窗口)內(nèi)的區(qū)域操作,通常和CDC 類(lèi)中與裁剪(clipping)有關(guān)的成員函數(shù)配合使用。函數(shù)參數(shù)用于指定選擇的是哪一種GDI 庫(kù)存對(duì)象,可直接選用的庫(kù)存對(duì)象見(jiàn)表: 216。在主菜單【幫助】的后面添加3 個(gè)菜單項(xiàng)【曲線(xiàn)】、【線(xiàn)寬】和【顏色】,并分別給它們添加子菜單,如下圖所示216。 //初始時(shí)窗口中不顯示曲線(xiàn)m_col=RGB(0,0,0)。打開(kāi) 文件,添加如下文件包含代碼:include include 為上表中各成員函數(shù)添加代碼:double CSy5View::calsin(int x){double y。y=cos(x*PI/180)。}void CSy5View::drawaxis(CDC *pDC){CString str。myfont)。i780。 //輸出X 軸上刻度值}for(i=0。if(i!=5) pDCTextOut(15,45+20*i,str)。}void CSy5View::drawcurve(CDC* pDC){drawaxis(pDC)。 //創(chuàng)建實(shí)線(xiàn)畫(huà)筆、線(xiàn)寬及顏//色由參數(shù)m_wid 和m_col 確定oldpen=pDCSelectObject(amp。i++){point[i].x=i+50。i721。}n 建立消息映射分別為菜單項(xiàng)【正弦】、【余弦】、【線(xiàn)寬2】、【線(xiàn)寬3】、【紅色】和【藍(lán)色】添加COMMAND 及UPDATE_COMMAND_UI 消息處理函數(shù),見(jiàn)下表:在消息處理函數(shù)中添加如下代碼:void CSy5View::OnSin(){m_typ=1。m_able=1。}void CSy5View::OnColb(){m_col=RGB(0,0,255)。}void CSy5View::OnWidsp3(){m_wid=3。 //“紅色”菜單項(xiàng)加標(biāo)記elsepCmdUISetCheck(false)。}void CSy5View::OnUpdateWidsp2(CCmdUI* pCmdUI){pCmdUIEnable(m_able)。if(m_wid==3)pCmdUISetCheck(true)。首先,選擇項(xiàng)目工作區(qū)的ClassView 視圖,雙擊CSy5View 類(lèi),在消息處理函數(shù)的聲明宏中添加代碼。最后,在 文件中給消息處理函數(shù)OnUpdatePrompt( )添加代碼。//獲取狀態(tài)欄指針CString str,str1,str2,str3。if(m_wid==2) //以下代碼根據(jù)用戶(hù)選擇確定提示信息str2=寬2,。str=str1+str2+str3。在坐標(biāo)系中生成函數(shù)y=(sin(x)+cos(x))*sin(x)對(duì)應(yīng)的圖形。l VS2005集成開(kāi)發(fā)環(huán)境。創(chuàng)建按鈕:BOOL CButton::Create( LPCTSTR lpszCaption, DWORD dwStyle, const RECTamp。 the check mark disappears the next time the user selects the box.BS_AUTORADIOBUTTON 圓形選擇按鈕,按鈕的狀態(tài)會(huì)自動(dòng)改變 Same as a radio button, except that when the user selects it, the button automatically highlights itself and removes the selection from any other radio buttons with the same style in the same group.BS_AUTO3STATE 允許按鈕有三種狀態(tài)即:選中,未選中,未定
點(diǎn)擊復(fù)制文檔內(nèi)容
數(shù)學(xué)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1