資源描述:
《vc基于對(duì)話框的程序如何顯示圖片》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、VC基于對(duì)話框的程序如何顯示圖片?用什么控件?或是什么其他的方法?在網(wǎng)上查了好久都沒(méi)有符合要求的,都是基于視圖的..最簡(jiǎn)便的方法..在窗口上點(diǎn)右鍵插入ActiveX控件里面以Microsoft開(kāi)頭的控件里尋找關(guān)于圖片的控件..比如MicrosoftListViewControl.等等..在對(duì)話框類(lèi)中的OnPaint()函數(shù)中用DrawIcon()函數(shù)來(lái)加載就可以了。有這個(gè)控件名字叫picture就在編輯框的上面,把它拖到對(duì)話框上再加載你要的圖片就可以了簡(jiǎn)單的ICON可以直接使用picture控件,它是一個(gè)位圖,大小16*16or
2、32*32方法一:CDC*dc;???dc=GetDC();//得到對(duì)話框的設(shè)備環(huán)境???CDCdcMemory;???dcMemory.CreateCompatibleDC(dc);//得到與對(duì)話框設(shè)備環(huán)境相兼容的內(nèi)存DC??????bitmap=newCBitmap();???HBITMAPhbitmap;???//裝載圖片???hbitmap=(HBITMAP)::LoadImage(NULL,"C:\pan.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);???if(hbitmap)//成
3、功???{???bitmap->Attach(hbitmap);???}???else???{//出錯(cuò)。。返回???AfxMessageBox("打開(kāi)圖像文件出錯(cuò)");???//釋放內(nèi)存中的設(shè)備環(huán)境???ReleaseDC(dc);???ReleaseDC(&dcMemory);???deletebitmap;???return;???}???//取得圖像的大小???longbmWidth,bmHeight;//圖像的寬度,和高度???BITMAPbm;???bitmap->GetBitmap(&bm);???bmWidth=b
4、m.bmWidth;???bmHeight=bm.bmHeight;??????dcMemory.SelectObject(bitmap);???dc->BitBlt(0,0,bmWidth,bmHeight,&dcMemory,0,0,SRCCOPY);//把內(nèi)存中的圖像復(fù)制到對(duì)話框DC中去另外,轉(zhuǎn)一篇描述的比較詳細(xì)的資料供參考:http://www.blogjava.net/Unmi/archive/2007/12/01/164444.html想做個(gè)東西,用VC,希望是在程序界面上能把指定URL的圖片顯示出來(lái),還沒(méi)找到如何顯
5、示HTTP資源的圖片,先還是讓本地圖片能在VC的窗口(包括各種控件)中顯示出來(lái)吧。在網(wǎng)上搜索了一番,大家代碼都如出一轍,我也不能生搬硬載,不由又親手實(shí)踐了一下,并連同原來(lái)學(xué)過(guò)的WindowSDK做窗口程序也復(fù)習(xí)了一遍,沒(méi)有使用到MFC,只需存成單個(gè)源文件,甚至用CL命令來(lái)編譯都無(wú)須打開(kāi)VC的,在VC6中測(cè)試通過(guò)。?代碼如下:(僅需關(guān)鍵最后一個(gè)方法ShowPic(char*lpstrFile,HWNDhWnd))#include//WindowsSDK要用到的??#include//打開(kāi)
6、文件的窗口要包含這個(gè)頭文件?????//用到了IPicture接口,要包含下面兩個(gè)頭文件??#include??#include?????//聲明窗口函數(shù)的原型??LRESULTCALLBACKMainWndProc(HWND,UINT,WPARAM,LPARAM);?????//聲明顯示圖片的函數(shù)原型??HRESULTShowPic(char*lpstrFile,HWNDhWnd);?????//圖片文件名??charlpstrFile[MAX_PATH]="";????????intWI
7、NAPIWinMain(HINSTANCEhThisInstance,???HINSTANCEhPrevInstance,???LPSTRlpszArgument,???intnFunsterStil)?????{???//窗口類(lèi)名???charszClassName[]="ShowPicture";??????WNDCLASSEXwindclass;??????//用描述主窗口的參數(shù)填充WNDCLASSEX結(jié)構(gòu)???windclass.cbSize=sizeof(windclass);//結(jié)構(gòu)大小???windclass.hI
8、nstance=hThisInstance;//實(shí)例句酚???windclass.lpszClassName=szClassName;???windclass.lpfnWndProc=MainWndProc;//窗口函數(shù)指針???windclass.style=