📄 empselect.cpp
字号:
// EmpSelect.cpp : 实现文件
//
#include "stdafx.h"
#include "ProjectManage.h"
#include "EmpSelect.h"
#include "ADODB.h"
// CEmpSelect 对话框
IMPLEMENT_DYNAMIC(CEmpSelect, CDialog)
CEmpSelect::CEmpSelect(CWnd* pParent /*=NULL*/)
: CDialog(CEmpSelect::IDD, pParent)
{
}
CEmpSelect::~CEmpSelect()
{
}
void CEmpSelect::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX,IDC_LIST2,SelectPersonbox);
DDX_Control(pDX,IDC_LIST3,SelectedBox);
DDX_Control(pDX,IDC_LIST1,HideBox);
DDX_CBIndex(pDX, IDC_LIST2, SelectPersonboxIndex);
DDX_CBIndex(pDX,IDC_LIST3,SelectedBoxIndex);
DDX_CBIndex(pDX, IDC_LIST1, HideBoxIndex);
}
BEGIN_MESSAGE_MAP(CEmpSelect, CDialog)
ON_BN_CLICKED(IDC_BUTTON2, &CEmpSelect::OnBnClickedButton2)
// ON_LBN_SELCHANGE(IDC_LIST3, &CEmpSelect::OnLbnSelchangeList3)
ON_BN_CLICKED(IDC_BUTTON1, &CEmpSelect::OnBntSelectPerson)
ON_BN_CLICKED(IDC_BUTTON3, &CEmpSelect::OnBntAdd)
ON_BN_CLICKED(IDC_BUTTON4, &CEmpSelect::OnBntAddAll)
ON_BN_CLICKED(IDC_BUTTON5, &CEmpSelect::OnBntRemoveItem)
ON_BN_CLICKED(IDC_BUTTON6, &CEmpSelect::OnBntRemoveAllItem)
ON_LBN_DBLCLK(IDC_LIST2, &CEmpSelect::OnLbnDblclkList2)
ON_LBN_DBLCLK(IDC_LIST3, &CEmpSelect::OnLbnDblclkList3)
END_MESSAGE_MAP()
// CEmpSelect 消息处理程序
void CEmpSelect::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
OnCancel();
}
void CEmpSelect::OnBntSelectPerson()
{
// TODO: 在此添加控件通知处理程序代码
POSITION p=this->m_NameList.GetHeadPosition();
while(p)
{
delete this->m_NameList.GetNext(p);
}
this->m_NameList.RemoveAll();
for(int i=0;i<SelectedBox.GetCount();i++)
{
SelectedBox.GetText(i,m_PersonList);
this->m_NameList.AddTail(m_PersonList);
}
OnOK();
}
BOOL CEmpSelect::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: 在此添加额外的初始化
CString sql;
EmpName* EmpN;
this->m_Storage.OpenSql("EmployeeTab","EmployeeName,EmployeeID");
this->m_Storage.MoveFirst();
int i=0;
if(!this->m_Storage.IsEof())
{
CString value;
CString sID;
while(!this->m_Storage.IsEof())
{
this->m_Storage.GetFieldValue(0,value);
this->m_Storage.GetFieldValue(1,sID);
//SelectPersonbox.AddString(value);
EmpN=new EmpName();
EmpN->Name=value;
EmpN->EmpID=sID;
SelectPersonbox.SetItemDataPtr(i,(LPSTR)EmpN);
SelectPersonbox.AddString(EmpN->Name);
this->m_Storage.MoveNext();
i++;
}
}
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
void CEmpSelect::OnBntAdd()
{
UpdateData();
// TODO: 在此添加控件通知处理程序代码
CString Name;
if( SelectPersonboxIndex < 0 ) return;
if(SelectPersonbox.GetCurSel()!=-1)
{
SelectPersonbox.GetText(SelectPersonbox.GetCurSel(),Name);
SelectPersonbox.GetItemDataPtr(SelectPersonbox.GetCurSel());
if(Name!="")
{
SelectedBox.AddString(Name);
SelectPersonbox.DeleteString(SelectPersonbox.GetCurSel());
}
}
}
void CEmpSelect::OnBntAddAll()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData();
CString Name;
if( SelectPersonboxIndex < 0 ) return;
for(int i=0;i<SelectPersonbox.GetCount();i++)
{
SelectPersonbox.GetText(i,Name);
SelectedBox.AddString(Name);
}
SelectPersonbox.ResetContent();
}
void CEmpSelect::OnBntRemoveItem()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData();
CString Name;
if( SelectedBox < 0 ) return;
if(SelectedBox.GetCurSel()!=-1)
{
SelectedBox.GetText(SelectedBox.GetCurSel(),Name);
if(Name!="")
{
SelectPersonbox.AddString(Name);
SelectedBox.DeleteString(SelectedBox.GetCurSel());
}
}
}
void CEmpSelect::OnBntRemoveAllItem()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData();
CString Name;
if( SelectedBox < 0 ) return;
for(int i=0;i<SelectedBox.GetCount();i++)
{
SelectedBox.GetText(i,Name);
SelectPersonbox.AddString(Name);
}
SelectedBox.ResetContent();
}
void CEmpSelect::OnLbnDblclkList2()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData();
EmpName* pEmp=NULL;
CString Names;
if( SelectPersonboxIndex < 0 ) return;
if(SelectPersonbox.GetCurSel()!=-1)
{
SelectPersonbox.GetText(SelectPersonbox.GetCurSel(),Names);
pEmp=(EmpName*)SelectPersonbox.GetItemDataPtr(SelectPersonbox.GetCurSel());
if(NULL!=pEmp)
{
Names=pEmp->Name;
}
if(Names!="")
{
SelectedBox.AddString(Names);
SelectPersonbox.DeleteString(SelectPersonbox.GetCurSel());
}
}
}
void CEmpSelect::OnLbnDblclkList3()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData();
CString Name;
if( SelectedBox < 0 ) return;
if(SelectedBox.GetCurSel()!=-1)
{
SelectedBox.GetText(SelectedBox.GetCurSel(),Name);
if(Name!="")
{
SelectPersonbox.AddString(Name);
SelectedBox.DeleteString(SelectedBox.GetCurSel());
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -