首先要將#include 加進來,開始時我加到stdafx.h中,但一直提示windows.h被重複引入的問題,後將其加在別的標頭檔案中,就可以了.. --!
一、的載入
hresult load(lpctstr pszfilename) throw( );
hresult load(istream* pstream) throw();
void loadfromresource(hinstance hinstance, lpctstr pszresourcename) throw( );
void loadfromresource(hinstance hinstance, uint nidresource) throw( );
如果需要顯示的在程式執行時需要更換則通常使用第乙個函式load(lpctstr pszfilename)載入,引數pszfilename指定要載入的檔案;如果需要顯示的是固定不變的,則通常使用第三個loadfromresource(hinstance hinstance, lpctstr pszresourcename)或第四個函式loadfromresource(hinstance hinstance, uint nidresource)載入,這兩個函式是從資源中取得資訊,每乙個引數是包含有待載入的模組例項控制代碼,第二個引數是資源的id或名稱。
lpctstr型別可以理解為 const char*
但是我在使用時需要加上 (lpctstr)"xx.jpg"
以下**分別通過load和loadfromresource載入了:
cimage m_image1; // 實際**中,被宣告成了類成員
cimage m_image2; // 實際**中,被宣告成了類成員
在實際中,第一種方法會出現無法載入的情況,目前我還不太清楚原因,希望知道的網友指教
二、的顯示
bool draw(hdc hdestdc,int xdest,int ydest,int ndestwidth,int ndestheight,
int xsrc,int ysrc, int nsrcwidth,int nsrcheight ) const throw( );
bool draw(hdc hdestdc,const rect& rectdest,const rect& rectsrc) const throw( );
bool draw(hdc hdestdc,int xdest,int ydest ) const throw( );
bool draw(hdc hdestdc,const point& pointdest) const throw( );
bool draw(hdc hdestdc,int xdest,int ydest,int ndestwidth,int ndestheight) const throw( );
bool draw(hdc hdestdc,const rect& rectdest) const throw( );
if(m_image2.isnull()) //判斷有無影象
return;
// 取得客戶區尺寸
crect zcrect;
getdlgitem(idc_static_pic2)->getclientrect(&zcrect);
// 將影象顯示在介面之上
m_image2.draw(getdlgitem(idc_static_pic2)->getdc()->m_hdc,
zcrect.left,
zcrect.top,
zcrect.width(),
zcrect.height());
當然,可以十分簡單的用
image->draw(this->getdc()->m_hdc,0,0);即可
可以通過image->setpixel(10,10,rgb(255,0,0));對上的(10,10)畫素修改為紅色
MFC 關於mfc中控制項禁用和狀態判斷
bool enablewindow bool benable true 判斷控制項是否可用可以呼叫 cwnd iswindowenable函式 bool iswindowenable iswindowenabled 函式用於判斷指定的視窗是否允許接受鍵盤或滑鼠輸入。函式原型 bool iswindo...
關於mfc控制項
假如是 cedit m e1 就是把編輯框控制項與乙個控制項類變數關聯起來 cstring str m e1.getwindowtex str 獲取這個編輯框中的字串 m e1.setreadonly true 設定這個編輯框為唯讀 還有很多能讀取和設定這個編輯框的函式,自己慢慢看吧 這時繫結的就不...
關於在MFC工程中呼叫MFC常規動態庫
使用mfc常規型動態鏈結庫 1 將生成的動態鏈結庫檔案 regudll.dll 和庫檔案 regudll.lib 拷貝到要呼叫的工程dlltest的目錄下,再將 regudll.lib 檔案加入到呼叫工程dlltest中.2 在呼叫工程testdlg.h中加入如下 宣告動態鏈結庫函式 define ...