vc實(shí)現(xiàn)打開(kāi)bmpjpg或gif圖片vcmfc打開(kāi)圖片

vc實(shí)現(xiàn)打開(kāi)bmpjpg或gif圖片vcmfc打開(kāi)圖片

ID:8807870

大?。?8.50 KB

頁(yè)數(shù):5頁(yè)

時(shí)間:2018-04-08

vc實(shí)現(xiàn)打開(kāi)bmpjpg或gif圖片vcmfc打開(kāi)圖片_第1頁(yè)
vc實(shí)現(xiàn)打開(kāi)bmpjpg或gif圖片vcmfc打開(kāi)圖片_第2頁(yè)
vc實(shí)現(xiàn)打開(kāi)bmpjpg或gif圖片vcmfc打開(kāi)圖片_第3頁(yè)
vc實(shí)現(xiàn)打開(kāi)bmpjpg或gif圖片vcmfc打開(kāi)圖片_第4頁(yè)
vc實(shí)現(xiàn)打開(kāi)bmpjpg或gif圖片vcmfc打開(kāi)圖片_第5頁(yè)
資源描述:

《vc實(shí)現(xiàn)打開(kāi)bmpjpg或gif圖片vcmfc打開(kāi)圖片》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。

1、1、新建一個(gè)單文檔的應(yīng)用程序,項(xiàng)目名稱(chēng)為ShowBitmap2、為CShowBitmapView類(lèi)添加下述成員變量和成員函數(shù)://參數(shù)定義public:????int?state;????//位圖顯示狀態(tài)????CStringBmpName;???//保存圖像文件文件名????CStringextname;????//保存圖像文件擴(kuò)展名????CBitmapm_bitmap;?//創(chuàng)建位圖對(duì)象????void?ShowBitmap(CStringBmpName);????//用來(lái)顯示指定位圖的函數(shù)????BOOLS

2、howJpgGif(CDC*?pDC,CStringstrPath,?int?x,?int?y);3、在CShowBitmap類(lèi)的構(gòu)造函數(shù)中,初始化成員變量state//?CShowBitmapView構(gòu)造/析構(gòu)CShowBitmapView::CShowBitmapView(){????state=0;}4、為ID_FILE_OPEN消息添加響應(yīng)函數(shù)(具體怎么加就不細(xì)說(shuō)了),編寫(xiě)該函數(shù)//?CShowBitmapView消息處理程序void?CShowBitmapView::OnFileOpen(){????//

3、CFileDialogdlg(TRUE,_T("BMP"),_T("*.BMP"),OFN_HIDEREADONLY

4、OFN_OVERWRITEPROMPT,_T("位圖文件(*.BMP;*.jpg)

5、*.BMP;*.jpg

6、"));??//這行代碼可以打開(kāi)BMP格式的圖片????CFileDialogdlg(TRUE,NULL,NULL,OFN_HIDEREADONLY

7、OFN_OVERWRITEPROMPT,_T("位圖文件(*.BMP)

8、*.BMP

9、jpg文件(*.jpg)

10、*.jpg

11、

12、"));?//這行代

13、碼可以打開(kāi)BMP和JPG格式的圖片//gif格式圖片的打開(kāi)在這就不列出來(lái)了,留給各位自己嘗試吧,對(duì)于gif格式圖片的顯示圖片函數(shù)和jpg格式圖片是同一個(gè)函數(shù)。?????if(IDOK==dlg.DoModal())?????{?????????state=0;??????????BmpName.Format(_T("%s"),dlg.GetPathName());?????????extname=dlg.GetFileExt();????????????//返回選定文件的擴(kuò)展文件名?????????extname.

14、MakeLower();?????????if(0==extname.Compare(_T("bmp")))?????????{?????????????ShowBitmap(BmpName);?????????}?????????else?????????{?????????????state=1;?????????}????????Invalidate();?????}}5、編寫(xiě)B(tài)MP圖片顯示函數(shù)void?CShowBitmapView::ShowBitmap(CStringBmpName){????if?(s

15、tate==0)????{????????????????????HBITMAPhBitmap=(HBITMAP)LoadImage(NULL,BmpName,IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION

16、LR_DEFAULTSIZE

17、LR_LOADFROMFILE);????????m_bitmap.Detach();????????m_bitmap.Attach(hBitmap);????????state=1;????????Invalidate();????}}6、編寫(xiě)jpg或g

18、if格式圖片顯示程序BOOLCShowBitmapView::ShowJpgGif(CDC*?pDC,CStringstrPath,?int?x,?int?y){????IStream?*pStm;??????CFileStatusfstatus;??????CFilefile;??????LONGcb;??????//打開(kāi)文件并檢測(cè)文件的有效性????if?(file.Open(strPath,CFile::modeRead)&&????????file.GetStatus(strPath,fstatus)&&?

19、????????((cb?=?fstatus.m_size)?!=?-1))??????{??????????HGLOBALhGlobal?=?GlobalAlloc(GMEM_MOVEABLE,cb);??????????LPVOIDpvData?=?NULL;??????????if?(hGlobal?!=?NULL)??????????{???????

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶(hù)上傳,版權(quán)歸屬用戶(hù),天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶(hù)請(qǐng)聯(lián)系客服處理。