MFC中icture控件顯示圖片.doc

MFC中icture控件顯示圖片.doc

ID:56873785

大小:28.50 KB

頁數(shù):5頁

時間:2020-07-17

MFC中icture控件顯示圖片.doc_第1頁
MFC中icture控件顯示圖片.doc_第2頁
MFC中icture控件顯示圖片.doc_第3頁
MFC中icture控件顯示圖片.doc_第4頁
MFC中icture控件顯示圖片.doc_第5頁
資源描述:

《MFC中icture控件顯示圖片.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、PictureBox控件的主要作用是為用戶顯示圖片。實際顯示圖片由Picture屬性決定。Picture屬性包括被顯示的圖片的文件名(及可選的路徑名)。注意窗體對象也具有Picture屬性,通過設(shè)置該屬性可直接在窗體背景上顯示圖片。  要在運行時顯示或替換圖片,可利用函數(shù)LoadPicture來設(shè)置Picture屬性。提供圖片文件名和可選路徑名,由LoadPicture函數(shù)處理加載和顯示圖片的細節(jié)?! icMain.Picture=LoadPicture("VANGOGH.BMP")  PictureBox控件具有AutoSize屬性,當

2、該屬性設(shè)置為True時,PictureBox能自動調(diào)整大小與顯示的圖片匹配。如果要用AutoSize屬性設(shè)置為True的PictureBox,設(shè)計窗體時就需要特別小心。圖片將不考慮窗體上的其它控件而調(diào)整大小,這可能導(dǎo)致意想不到的后果,如覆蓋其它控件。設(shè)計時應(yīng)通過加載每一幅圖片來檢查是否有這種現(xiàn)象發(fā)生?!cpicture控件的分類進行拉總結(jié),?(一)非動態(tài)顯示圖片(即圖片先通過資源管理器載入,有一個固定ID)(二)動態(tài)載入圖片(即只需要在程序中指定圖片的路徑即可載入)為方便說明,我們已經(jīng)建好一個基于對話框的工程,名為Ttest.對話框類為C

3、TestDlg(一)vcpicture控件非動態(tài)載入圖片.方法1.先從最簡單的開始,用picture控件來實現(xiàn).步驟:先在資源里Import一張圖片,ID為IDB_BITMAP2,然后在對話框上添加一個picture控件,右鍵點擊打開屬性,將type下拉框選擇BITMAP,緊跟著Image下面就出現(xiàn)一個下拉框,拉開就會看到所有已經(jīng)載入好的圖片,選擇你要的圖片.運行程序即可看到.方法2vcpicture控件.通過背景圖同樣如上,先載入一張圖片,ID為IDB_BITMAP2TestDlg.h中CBrushm_brBk;//在public中定義T

4、estDlg.cpp中在初始化函數(shù)OnInitDialog()中加入:BOOLCTestDlg::OnInitDialog(){CDialog::OnInitDialog();CBitmapbmp;bmp.LoadBitmap(IDB_BITMAP2);m_brBk.CreatePatternBrush(&bmp);bmp.DeleteObject();returnTRUE;//returnTRUEunlessyousetthefocustoacontrol}在打開類向?qū)?找到WM_CTLCOLOR消息,重載得對應(yīng)函數(shù)OnCtlColor(

5、),添加如下:HBRUSHCTestDlg::OnCtlColor(CDC*pDC,CWnd*pWnd,UINTnCtlColor){HBRUSHhbr=CDialog::OnCtlColor(pDC,pWnd,nCtlColor);if(pWnd==this){returnm_brBk;}returnhbr;}(二)vcpicture控件動態(tài)載入圖片.方法3圖像控件(本例用KoDak圖像編輯控件)1.首先應(yīng)該保證系統(tǒng)中有這個控件。注意,它不能單獨使用,必須和其他幾個控件(特別是Imgcmn.dll)一同使用。如果沒有,從別的機器上copy

6、過來即可。這幾個文件是Imgadmin.ocx,Imgcmn.dll,Imgedit.ocx,Imgscan.ocx,Imgshl.dll,Imgthumb.ocx,Imgutil.dll,把它們copy到windows/system目錄下,然后用regsvr32.exe將它們分別注冊。2.打開工程,進入資源管理器,在對話框上單擊右鍵,單擊InsertActivexcontrol…選擇Kodak圖象編輯控件,大小任意。3.在對話框上選中該控件,為其添加變量:m_ctrlPicture。。4.在BOOLCTestDlg::OnInitDial

7、og()添加如下:BOOLCTestDlg::OnInitDialog(){CDialog::OnInitDialog();m_ctrlPicture.SetImage("aa.jpg");//保證圖像在工程目錄下,也可以寫絕對路徑m_ctrlPicture.Display();returnTRUE;//returnTRUEunlessyousetthefocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSE}編譯運行就OK了,此種方法的好處就是可能針對多種圖像格式.方法4vc

8、picture控件通過CBitmap,HBITMAP,直接用OnPaint()繪制首先在CTestDlg類中聲明一個變量:CBitmapm_bmp;然后我們在對話框中加入一個pi

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

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

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