99 lines
1.8 KiB
C++
99 lines
1.8 KiB
C++
#include "StdAfx.h"
|
|||
|
|
#include "CDimTxtDlg.h"
|
||
|
|
|
||
|
|
IMPLEMENT_DYNAMIC(CDimTxtDlg, CDialog)
|
||
|
|
|
||
|
|
CDimTxtDlg::CDimTxtDlg(CWnd *pParent /*= NULL*/)
|
||
|
|
: CDialog(CDimTxtDlg::IDD, pParent)
|
||
|
|
, m_sDimTxt(_T(""))
|
||
|
|
, m_dTxtH(2.5)
|
||
|
|
, m_dWScale(0.75)
|
||
|
|
, m_sScale(_T("1:10"))
|
||
|
|
, m_bIsElDimTxt(FALSE)
|
||
|
|
, m_bElStyle(0)
|
||
|
|
{
|
||
|
|
}
|
||
|
|
|
||
|
|
CDimTxtDlg::~CDimTxtDlg()
|
||
|
|
{
|
||
|
|
}
|
||
|
|
|
||
|
|
void CDimTxtDlg::DoDataExchange(CDataExchange *pDX)
|
||
|
|
{
|
||
|
|
CDialog::DoDataExchange(pDX);
|
||
|
|
|
||
|
|
DDX_Text(pDX, IDC_EDIT1, m_sDimTxt);
|
||
|
|
DDX_Text(pDX, IDC_EDIT2, m_dTxtH);
|
||
|
|
DDX_Text(pDX, IDC_EDIT3, m_dWScale);
|
||
|
|
DDX_CBString(pDX, IDC_COMBO1, m_sScale);
|
||
|
|
DDX_Radio(pDX, IDC_RADIO5, m_bElStyle);
|
||
|
|
DDX_Control(pDX, IDC_RADIO5, m_wndBTEL1);
|
||
|
|
DDX_Control(pDX, IDC_RADIO6, m_wndBTEL2);
|
||
|
|
DDX_Control(pDX, IDC_COMBO1, m_wndCombo);
|
||
|
|
}
|
||
|
|
|
||
|
|
BEGIN_MESSAGE_MAP(CDimTxtDlg, CDialog)
|
||
|
|
ON_BN_CLICKED(IDOK, &CDimTxtDlg::OnBnClickedOk)
|
||
|
|
END_MESSAGE_MAP()
|
||
|
|
|
||
|
|
BOOL CDimTxtDlg::OnInitDialog()
|
||
|
|
{
|
||
|
|
CDialog::OnInitDialog();
|
||
|
|
|
||
|
|
m_bmpEl1.LoadBitmap(IDB_BMPEL1);
|
||
|
|
m_wndBTEL1.SetBitmap(m_bmpEl1);
|
||
|
|
|
||
|
|
m_bmpEl2.LoadBitmap(IDB_BMPEL2);
|
||
|
|
m_wndBTEL2.SetBitmap(m_bmpEl2);
|
||
|
|
|
||
|
|
if (m_bIsElDimTxt)
|
||
|
|
{
|
||
|
|
m_wndBTEL1.ShowWindow(SW_SHOW);
|
||
|
|
m_wndBTEL2.ShowWindow(SW_SHOW);
|
||
|
|
GetDlgItem(IDC_STATIC_EL)->ShowWindow(SW_SHOW);
|
||
|
|
}
|
||
|
|
else
|
||
|
|
{
|
||
|
|
m_wndBTEL1.ShowWindow(SW_HIDE);
|
||
|
|
m_wndBTEL2.ShowWindow(SW_HIDE);
|
||
|
|
GetDlgItem(IDC_STATIC_EL)->ShowWindow(SW_HIDE);
|
||
|
|
}
|
||
|
|
|
||
|
|
int nPos = m_wndCombo.FindString(0, m_sScale);
|
||
|
|
if (nPos != -1)
|
||
|
|
{
|
||
|
|
m_wndCombo.SetCurSel(nPos);
|
||
|
|
}
|
||
|
|
|
||
|
|
UpdateData(FALSE);
|
||
|
|
|
||
|
|
return TRUE;
|
||
|
|
}
|
||
|
|
|
||
|
|
void CDimTxtDlg::OnBnClickedOk()
|
||
|
|
{
|
||
|
|
UpdateData();
|
||
|
|
|
||
|
|
m_sDimTxt.TrimRight();
|
||
|
|
m_sDimTxt.TrimLeft();
|
||
|
|
|
||
|
|
if (m_sDimTxt.IsEmpty())
|
||
|
|
{
|
||
|
|
AfxMessageBox(_T("标注文本不可为空!"));
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
if (m_dTxtH < 0.5)
|
||
|
|
{
|
||
|
|
AfxMessageBox(_T("打印字高太小!"));
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
if (m_dWScale < 0.1)
|
||
|
|
{
|
||
|
|
AfxMessageBox(_T("宽度系数太小!"));
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
CDialog::OnOK();
|
||
|
|
}
|