|
VS2008沒用過,跟你說一種在VC++6.0下的實現(xiàn)VS2008沒用過,跟你說一種在VC++6.0下的實現(xiàn)View添加按鈕及其消息處理的方法吧
1、在你的工程的View類的頭文件(***View.h)中 1.0 添加聲明 CButton * m_pBtn; 2.0 在//{{AFX_MSG(C***View) 和 //}}AFX_MSG DECLARE_MESSAGE_MAP()之間添加消息處理函數(shù)聲明 afx_msg void OnBtnFileOpen(); 2、在工程View類的實現(xiàn)文件中(***View.cpp) 2.0 定義按鈕ID #define ID_MYBUTTON1 12315 2.1 構(gòu)造函數(shù)中添加代碼 m_pBtn = NULL; 2.2 析構(gòu)函數(shù)中添加代碼 if (m_pBtn != NULL) { m_pBtn->Detach(); delete m_pBtn; } 2.3 在OnInitialUpdate()函數(shù)中添加 if(m_pBtn == NULL) { m_pBtn = new CButton; int w = 50; int h = 20; int x0 = 100; // 這里是按鈕的起始x坐標,以后用到再移動按鈕吧 int y0 = 100; // 這里是按鈕的起始y坐標,以后用到再移動按鈕吧 m_pBtn->Create(_T("我的Button"), WS_CHILD|WS_VISIBLE|BS_FLAT, CRect(x0, y0, x0 + w, y0 + h), this, ID_MYBUTTON1); } 2.4 在 BEGIN_MESSAGE_MAP(C***View, CView) 和 END_MESSAGE_MAP() 之間添加消息映射 ON_BN_CLICKED(ID_MYBUTTON1, OnBtnFileOpen) 2.5 添加消息處理函數(shù) void C***View::OnBtnFileOpen() { CFileDialog FileDlg(TRUE, _T("jpg"), _T("*.jpg"), OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, TEXT("圖像文件(*.jpg)|*.jpg||"), this); if (FileDlg.DoModal()!=IDOK) { return; } CString strFileName = FileDlg.GetPathName(); HANDLE hFile = CreateFile(strFileName, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0); // 利用hFile進行文件操作 } zyl102600 - 五級 2010-6-25 11:06 吧 1、在你的工程的View類的頭文件(***View.h)中 1.0 添加聲明 CButton * m_pBtn; 2.0 在//{{AFX_MSG(C***View) 和 //}}AFX_MSG DECLARE_MESSAGE_MAP()之間添加消息處理函數(shù)聲明 afx_msg void OnBtnFileOpen(); 2、在工程View類的實現(xiàn)文件中(***View.cpp) 2.0 定義按鈕ID #define ID_MYBUTTON1 12315 2.1 構(gòu)造函數(shù)中添加代碼 m_pBtn = NULL; 2.2 析構(gòu)函數(shù)中添加代碼 if (m_pBtn != NULL) { m_pBtn->Detach(); delete m_pBtn; } 2.3 在OnInitialUpdate()函數(shù)中添加 if(m_pBtn == NULL) { m_pBtn = new CButton; int w = 50; int h = 20; int x0 = 100; // 這里是按鈕的起始x坐標,以后用到再移動按鈕吧 int y0 = 100; // 這里是按鈕的起始y坐標,以后用到再移動按鈕吧 m_pBtn->Create(_T("我的Button"), WS_CHILD|WS_VISIBLE|BS_FLAT, CRect(x0, y0, x0 + w, y0 + h), this, ID_MYBUTTON1); } 2.4 在 BEGIN_MESSAGE_MAP(C***View, CView) 和 END_MESSAGE_MAP() 之間添加消息映射 ON_BN_CLICKED(ID_MYBUTTON1, OnBtnFileOpen) 2.5 添加消息處理函數(shù) void C***View::OnBtnFileOpen() { CFileDialog FileDlg(TRUE, _T("jpg"), _T("*.jpg"), OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, TEXT("圖像文件(*.jpg)|*.jpg||"), this); if (FileDlg.DoModal()!=IDOK) { return; } CString strFileName = FileDlg.GetPathName(); HANDLE hFile = CreateFile(strFileName, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0); // 利用hFile進行文件操作 } |
|
|
來自: Frank_Chia > 《軟件架構(gòu)》