專案名稱: OpenCVLoadImage
應用程式類型: 單一文件介面
基底類別:下拉選單選擇CFormView
----------------------------------------分隔線----------------------------------------
方案組態: 下拉選單選擇Release
設定專案屬性
-> C/C++ -> 其他Include目錄 -> C:\OpenCV2.1\include\opencv
-> 連結器 -> 其他程式庫目錄 -> C:\OpenCV2.1\lib
-> 連結器 -> 其他相依性 -> cxcore210.lib cv210.lib highgui210.lib
-> 組態屬性 -> 一般 -> 字元集 -> 使用多位元組字元集
----------------------------------------分隔線----------------------------------------
類別檢視 -> COpenCVLoadImageDoc滑鼠雙擊開啟OpenCVCameraDoc.h
1. 加入#include "highgui.h"
2. 加入成員變數
public:
CImage m_image; // CImage即CvvImage
----------------------------------------分隔線----------------------------------------
資源檢視 -> Menu -> 滑鼠雙擊IDR_MAINFRAME ->
選擇[檔案]-> 選擇[開新檔案] -> 按滑鼠右鍵 -> [加入事件處理常式]->
訊息類型->COMMAND->類別清單COpenCVLoadImageView->按下[加入並編輯]
自動開啟 OpenCVLoadImageView.cpp
void COpenCVLoadImageView::OnFileNew()
{
// TODO: 在此加入您的命令處理常式程式碼
Invalidate(); // 清空畫面
COpenCVLoadImageDoc *pDoc = GetDocument();
pDoc->m_image.~CvvImage(); // 刪除圖片
}
----------------------------------------分隔線----------------------------------------
資源檢視 -> Menu -> 滑鼠雙擊IDR_MAINFRAME ->
選擇[檔案]-> 選擇[開啟舊檔] -> 按滑鼠右鍵 -> [加入事件處理常式]->
訊息類型->COMMAND->類別清單COpenCVLoadImageView->按下[加入並編輯]
自動開啟 OpenCVLoadImageView.cpp
void COpenCVLoadImageView::OnFileOpen()
{
// TODO: 在此加入您的命令處理常式程式碼
COpenCVLoadImageDoc *pDoc = GetDocument();
CFileDialog fileDlg(true);
if(fileDlg.DoModal() == IDOK)
{
Invalidate(); // 清空畫面
string szFileName = fileDlg.GetFileName(); // 圖片路徑+檔名
pDoc->m_image.Load(szFileName.c_str()); // 載入圖片
}
}
在OpenCVLoadImageView.cpp這個檔案前幾行中(最後一個#include之後)
加入using namespace std;
----------------------------------------分隔線----------------------------------------
類別檢視 -> COpenCVLoadImageDView -> 按滑鼠右鍵出現選單後選擇[屬性]
->點選[訊息]按鈕 -> 選擇WM_PAINT下拉選單 -> 加入OnPaint事件
void COpenCVLoadImageView::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: 在此加入您的訊息處理常式程式碼
// 不要呼叫圖片訊息的 CFormView::OnPaint()
COpenCVLoadImageDoc *pDoc = GetDocument();
CRect r; // 矩形繪製範圍:r
r.left = 0;
r.top = 0;
r.right = pDoc->m_image.Width();
r.bottom = pDoc->m_image.Height();
pDoc->m_image.DrawToHDC( dc.GetSafeHdc(), r);
}
原始程式: OpenCVLoadImage
留言列表