版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、現(xiàn)在以最短的時(shí)間帶領(lǐng)大家進(jìn)行一個(gè)C+MFC,故的時(shí)鐘軟件,下面分幾步敘述,相信大家看完本期實(shí)驗(yàn),自己也能獨(dú)立做個(gè)這樣的軟件第一啟動(dòng)VisualC+,創(chuàng)建一個(gè)單文檔應(yīng)用程序,工程名為ClockO第二打開(kāi)ClassWizard對(duì)話(huà)框?yàn)镃ClockView類(lèi)添加WM_TIMIfRWM_CREAB函數(shù)代碼如下。voidCClockView:OnTimer(UINTnIDEvent)/TODO:Addyourmessagehandlercodehereand/orcalldefaultInvalidateRect(NULL,true);UpdateWindow();CView:OnTimer(nIDEv
2、ent);intCClockView:OnCreate(LPCREATESTRUCTlpCreateStruct)if(CView:OnCreate(lpCreateStruct)=-1)return-1;/TODO:AddyourspecializedcreationcodehereSetTimer(1,1000,NULL);return0;我們現(xiàn)在分別添加,截圖如下uuldCClockView:OnTiner(UINTnIDEutnt)<J/TODDiAdd90UPnessagehandlBPherend/orCalldefaultInualidateRect(HULL.true);
3、UpdateUindou();CUiew:0nTiner(nIDEuent);)inrCC1ockUiPW::OnCrPAtP(LPCRFflTESTF(UCTIpCrProStruct)(iF(CUiew:OinCreate(lpCreateStruct)=-1)returnT:/TtJDO:Add|,ourspecializedcreationcodehereSetTimr(iJMB,HULL);returnn:第三打開(kāi)文件添加頭文件,調(diào)用數(shù)學(xué)函數(shù)庫(kù)。在其他函數(shù)中添加代碼。#include""截圖如下卜ClocklicroooftVimalClIC10ckYicv.cj
4、>p國(guó)比胖口微導(dǎo)的叁春插入Q)工程處)齦J®)工具。近口如皆助陰,陡降甚電也|ciQa-|Win32Debugnc二|少也息11!Bl的|CClDck'/icw二|AUclo)3memberaCCIockVicw_d”HClnckUleu,cppiImtJltneiitdtiunuf(IipCClvcJkUiewclass/岸Clockchsses、CAboutDlg*七CCluUAup»CCIodcDoc->>"CCIocWle*AsserlValiiJO諱CClockVicw|/TCIockVIewO,Duniip(CDijnip*-
5、eW-c:Ufnd|OnAcgliiPrlnii於OnCri:zilc(l_PC*OnLJrav4CDC',冷OnFndPrlniTlnrvtOnPrEpareRrii*Onlimer|UINIncmiihn1nriu(i”豆tda+jt_rr'tincludo"Clock.h"XiriLlude"ridthJiJtinciud'CIocxdoc.h"tincludt"CLockView.h"tiFOe_DEB也tdefinenewDEBUGHEWBunflpfTHTS_FIIEstaticcnar_THS_F
6、iLEJ=_fileienrljf力/,/7/0/,/"/""/"CCluckUirvrIMPLEMErtlD?HCRE:ATL(CClackJieufCUleu)第四在其他函數(shù)中添加代碼。代碼如下voidCClockView:OnDraw(CDC*pDC)CClockDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);/TODO:adddrawcodefornativedatahere/獲取客戶(hù)區(qū)大小RECTRect;GetClientRect(&Rect);/計(jì)算橢圓中心位置intCenterX=2;/區(qū)域最右
7、邊的一半intCenterY=2;/區(qū)域最下邊的一半/取當(dāng)前時(shí)間CTimeTime=CTime:GetCurrentTime();CStringstr;inti,x,y;CSizesize*;/創(chuàng)建一支黑色的筆CPenPen(PS_SOLID,5,RGB(0,0,0);/選進(jìn)設(shè)備表,保存原筆CPen*OldPen=pDC->SelectObject(&Pen);/繪制鐘面橢圓pDC->Ellipse(5,5,;doubleRadians;/設(shè)置字體顏色為紅色pDC->SetTextColor(RGB(255,0,0);for(i=1;i<=12;i+)/格式化鐘
8、點(diǎn)值("%d",i);size=pDC->GetTextExtent(str,();/計(jì)算時(shí)間點(diǎn)放置的位置Radians=(double)i*;x=CenterX-2)+(int)(double)(CenterX-0)*sin(Radians);y=CenterY-2)-(int)(double)(CenterY-20)*cos(Radians);/繪制12個(gè)時(shí)間點(diǎn)(1-12)pDC->TextOut(x,y,str);/計(jì)算時(shí)鐘指針的夾角Radians=(double)()+(double)()/+(double)()/;Radians*=;/創(chuàng)建時(shí)鐘指針畫(huà)筆
9、CPenHourPen(PS_SOLID,5,RGB(0,255,0);pDC->SelectObject(&HourPen);/繪制時(shí)鐘指針線(xiàn)pDC->MoveTo(CenterX,CenterY);pDC->LineTo(CenterX+(int)(double)(CenterX/3)*sin(Radians),CenterY-(int)(double)(CenterY/3)*cos(Radians);Radians=(double)()+(double)()/;Radians*=;/創(chuàng)建分鐘指針畫(huà)筆CPenMinutePen(PS_SOLID,3,RGB(0,0
10、,255);pDC->SelectObject(&MinutePen);/繪制分鐘指針線(xiàn)pDC->MoveTo(CenterX,CenterY);pDC->LineTo(CenterX+(int)(double)(CenterX*2)/3)*sin(Radians),CenterY-(int)(double)(CenterY*2/3)*cos(Radians);Radians=(double)();Radians*=;/創(chuàng)建秒鐘指針畫(huà)筆CPenSecondPen(PS_SOLID,1,RGB(255,0,255);pDC->SelectObject(&S
11、econdPen);/繪制秒鐘指針線(xiàn)pDC->MoveTo(CenterX,CenterY);pDC->LineTo(CenterX+(int)(double)(CenterX*4)/5)*sin(Radians),CenterY-(int)(double)(CenterY*4)/5*cos(Radians);pDC->SelectObject(OldPen);>>>>>>>>>>>>>>>>>>>>>>>>>>>&
12、gt;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>力口01。口司可徜M:Wd丁|曾幅猊口油嘲二奉四!旦西MlndcVIrwAllckRnemiirntl*口011”t|£一創(chuàng)嚏時(shí)節(jié)由*產(chǎn)卡日"CAb«ulDIfl W . 口0山由卬p -DCInckDo
13、G * CCIodkVIcw oGlobfiltCPenHourFenk(FS_£0fl.lD75tK&E(e2S;>1l!l)>pDC第&老1世。tubjtctc看urPeft);臉制時(shí)神由計(jì)pDC->irwinjpr<i(cpntprac,cpntpkyj;pDC->Liner<i(CpnterJ>i.,(int(dauble)(Radians)aCntorV-(ini:)(dnubl#(Center3)«asfta<ian$)J;RMljniE-(d»imu>)rini*.ci*ttila
14、utv(14(gnmtiii>)riw.Gt*tcMd()/««.«Radians«-ft.7H/6I-0:“創(chuàng)旗分神指堂度墨CPW)nlMiWrfl(PS_SMIDTa,»B(>Stl*ClDbfCfAlfiiiurpFriQ;川號(hào)市臼杵簾打|iDC->lltoueT<i(Ce*nter.KaCe*nterV);pH>LlfteTtt(t«niterX*(int)(dautil>)(CentFrK«2)/9)x&ln<Rddljng)aCnterV-(ln()(iioublr)(CentrV*)«c»M);RiitfiMS-(iliiiiblr)Ttnp.Grlp£on(l();Ratfidns.&r?s/6i.n;,剛掛機(jī)不指管隆電cpf>nh(pssniLiiii/irtcipDC->'£plPGtIHhjpctfiftrcnnilPrn)(i/欄第1確據(jù)算pM->HtoveT<i(CFnltrXBCenterY);p&
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度文化傳媒內(nèi)容制作合同
- 2024年大型活動(dòng)保障車(chē)輛租賃合同
- 2024年上海房屋裝修工程分包合同
- 2024年廉潔承諾函:雙方誠(chéng)信自律協(xié)議
- 教育工作者主要先進(jìn)事跡(5篇)
- 中學(xué)生讀書(shū)演講稿
- 2024年度質(zhì)量控制合同:MLB棒球帽正品知識(shí)分享
- 2024年工程監(jiān)測(cè)與檢測(cè)合同
- 2024室內(nèi)外演唱會(huì)舞臺(tái)安全檢測(cè)合同
- 2024年國(guó)際商貿(mào)合同的科學(xué)與藝術(shù)
- 職工宿舍安全培訓(xùn)
- 華南理工大學(xué)《微積分Ⅰ(二)》2021-2022學(xué)年第一學(xué)期期末試卷
- 2024-2030年配電自動(dòng)化行業(yè)市場(chǎng)發(fā)展現(xiàn)狀分析及競(jìng)爭(zhēng)格局與投資價(jià)值研究報(bào)告
- 山東省青島市李滄區(qū)2024-2025學(xué)年上學(xué)期八年級(jí) 期中英語(yǔ)試卷
- 工程項(xiàng)目承攬建設(shè)股權(quán)合作協(xié)議(居間協(xié)議)
- 2024年四川省綿陽(yáng)市中考數(shù)學(xué)試題(無(wú)答案)
- 1.1公有制為主體+多種所有制經(jīng)濟(jì)共同發(fā)展課件-高中政治統(tǒng)編版必修二經(jīng)濟(jì)與社會(huì)
- 2024年中國(guó)空氣凈化節(jié)能燈市場(chǎng)調(diào)查研究報(bào)告
- 2024-2025學(xué)年人教版物理九年級(jí)上學(xué)期期中測(cè)試物理模擬試卷
- (工作計(jì)劃)非物質(zhì)文化遺產(chǎn)保護(hù)方案
- 下肢深靜脈血栓的預(yù)防和護(hù)理新進(jìn)展
評(píng)論
0/150
提交評(píng)論