96 lines
1.8 KiB
C++
96 lines
1.8 KiB
C++
// CalImageDlg.cpp: 实现文件
|
||
//
|
||
|
||
#include "stdafx.h"
|
||
|
||
#include "DN_sample.h"
|
||
#include "afxdialogex.h"
|
||
#include "CalImageDlg.h"
|
||
|
||
// CalImageDlg 对话框
|
||
|
||
IMPLEMENT_DYNAMIC(CalImageDlg, CDialog)
|
||
|
||
CalImageDlg::CalImageDlg(CWnd* pParent /*=nullptr*/)
|
||
: CDialog(CalImageDlg::IDD, pParent)
|
||
, m_img(nullptr)
|
||
{
|
||
//Create(IDD, pParent);
|
||
}
|
||
|
||
|
||
void CalImageDlg::DoDataExchange(CDataExchange* pDX)
|
||
{
|
||
CDialog::DoDataExchange(pDX);
|
||
}
|
||
|
||
|
||
BEGIN_MESSAGE_MAP(CalImageDlg, CDialog)
|
||
ON_BN_CLICKED(IDC_BUTTON1, &CalImageDlg::OnBnClickedButton1)
|
||
END_MESSAGE_MAP()
|
||
|
||
|
||
// CalImageDlg 消息处理程序
|
||
|
||
|
||
BOOL CalImageDlg::OnInitDialog()
|
||
{
|
||
CDialog::OnInitDialog();
|
||
|
||
ModifyStyle(WS_CAPTION, 0);
|
||
|
||
m_form2.Create(IDD_FORM2,this);
|
||
|
||
return true;
|
||
}
|
||
|
||
void CalImageDlg::SetImgPos() {
|
||
RECT rect;
|
||
GetClientRect(&rect);
|
||
rect.top += 35;//对坐标做一些微调,这35是选项卡按钮的高度
|
||
rect.left += 5;//这是边框的宽度
|
||
m_form2.SetWindowPos(NULL, 0, 0, rect.right - rect.left, rect.bottom - rect.top, SWP_NOZORDER);
|
||
m_form2.MoveWindow(&rect);
|
||
m_form2.ShowWindow(SW_SHOW);
|
||
}
|
||
|
||
void CalImageDlg::OnBnClickedButton1()
|
||
{
|
||
if (!m_img) return;
|
||
|
||
if (!m_img->m_CalData) {
|
||
m_img->CalDistance();
|
||
}
|
||
Display();
|
||
}
|
||
|
||
|
||
void CalImageDlg::OnPaint() {
|
||
|
||
CDialog::OnPaint();
|
||
}
|
||
|
||
|
||
void CalImageDlg::Display()
|
||
{
|
||
if (!m_img) return;
|
||
|
||
m_form2.ShowCalImg(m_img);
|
||
CStatic* sx = (CStatic*)GetDlgItem(IDC_STATIC3);
|
||
CStatic* sy = (CStatic*)GetDlgItem(IDC_STATIC4);
|
||
CString cstr;
|
||
cstr.Format(L"%.3fmm", m_img->m_DistanceX);
|
||
sx->SetWindowTextW(cstr.GetString());
|
||
cstr.Format(L"%.3fmm", m_img->m_DistanceY);
|
||
sy->SetWindowTextW(cstr.GetString());
|
||
|
||
m_form2.Invalidate();
|
||
sx->Invalidate();
|
||
sy->Invalidate();
|
||
}
|
||
|
||
void CalImageDlg::ClearImg() {
|
||
m_form2.ClearImg();
|
||
|
||
Display();
|
||
} |