80 lines
1.4 KiB
C++
80 lines
1.4 KiB
C++
#include "stdafx.h"
|
|
#include "CXSHSIZEDlg.h"
|
|
|
|
IMPLEMENT_DYNAMIC(CXSHSIZEDlg, CDialog)
|
|
|
|
CXSHSIZEDlg::CXSHSIZEDlg(std::vector<CString> &vec, CWnd* pParent)
|
|
: CDialog(IDD_DLG_XSHSize, pParent)
|
|
, m_iXHSL(0)
|
|
, m_iXHSW(0)
|
|
, m_sizes(vec)
|
|
{
|
|
}
|
|
|
|
CXSHSIZEDlg::~CXSHSIZEDlg()
|
|
{
|
|
}
|
|
|
|
void CXSHSIZEDlg::DoDataExchange(CDataExchange* pDX)
|
|
{
|
|
DDX_Control(pDX, IDC_LIST_SIZE, m_ListBoxSize);
|
|
DDX_Text(pDX, IDC_EDIT_LEN, m_iXHSL);
|
|
DDX_Text(pDX, IDC_EDIT_WIDTH, m_iXHSW);
|
|
}
|
|
|
|
BOOL CXSHSIZEDlg::OnInitDialog()
|
|
{
|
|
CDialog::OnInitDialog();
|
|
|
|
refreshList();
|
|
|
|
UpdateData(FALSE);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
BEGIN_MESSAGE_MAP(CXSHSIZEDlg, CDialog)
|
|
ON_BN_CLICKED(IDOK, &CXSHSIZEDlg::OnBnClickedOk)
|
|
ON_BN_CLICKED(IDC_BTN_ADD, &CXSHSIZEDlg::OnBnClickedAdd)
|
|
ON_BN_CLICKED(IDC_BTN_DELETE, &CXSHSIZEDlg::OnBnClickedDelete)
|
|
END_MESSAGE_MAP()
|
|
|
|
void CXSHSIZEDlg::OnBnClickedOk()
|
|
{
|
|
UpdateData();
|
|
|
|
CDialog::OnOK();
|
|
}
|
|
|
|
void CXSHSIZEDlg::OnBnClickedAdd()
|
|
{
|
|
UpdateData(TRUE);
|
|
|
|
CString str;
|
|
str.Format(_T("%d*%d"), m_iXHSL, m_iXHSW);
|
|
m_sizes.push_back(str);
|
|
|
|
refreshList();
|
|
}
|
|
|
|
void CXSHSIZEDlg::OnBnClickedDelete()
|
|
{
|
|
// 得到当前选中索引,得到itor
|
|
// m_sizes.erase();
|
|
|
|
int nSel = m_ListBoxSize.GetCurSel();
|
|
std::vector<CString>::iterator it = m_sizes.erase(m_sizes.begin() + nSel);
|
|
|
|
refreshList();
|
|
}
|
|
|
|
void CXSHSIZEDlg::refreshList()
|
|
{
|
|
// 先清空
|
|
m_ListBoxSize.ResetContent();
|
|
for (size_t i(0); i < m_sizes.size(); ++i)
|
|
{
|
|
m_ListBoxSize.AddString(m_sizes.at(i));
|
|
}
|
|
}
|