📄 prtslt.cpp
字号:
// PrtSlt.cpp : implementation file
//
#include "stdafx.h"
#include "wgl_32.h"
#include "PrtSlt.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CPrtSlt dialog
CPrtSlt::CPrtSlt(CWnd* pParent /*=NULL*/)
: CDialog(CPrtSlt::IDD, pParent)
{
//{{AFX_DATA_INIT(CPrtSlt)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
tl = LB_ERR;
}
void CPrtSlt::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CPrtSlt)
DDX_Control(pDX, IDC_PRINTLIST, m_TargetList);
DDX_Control(pDX, IDC_SOURCELIST, m_SourceList);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CPrtSlt, CDialog)
//{{AFX_MSG_MAP(CPrtSlt)
ON_BN_CLICKED(IDC_ADD, OnAdd)
ON_BN_CLICKED(IDC_DEL, OnDel)
ON_LBN_DBLCLK(IDC_SOURCELIST, OnDblclkSourcelist)
ON_LBN_SETFOCUS(IDC_PRINTLIST, OnSetfocusPrintlist)
ON_LBN_SETFOCUS(IDC_SOURCELIST, OnSetfocusSourcelist)
ON_BN_CLICKED(IDC_APP, OnApp)
ON_LBN_SELCANCEL(IDC_PRINTLIST, OnSelcancelPrintlist)
ON_LBN_SELCHANGE(IDC_PRINTLIST, OnSelchangePrintlist)
ON_LBN_DBLCLK(IDC_PRINTLIST, OnDblclkPrintlist)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CPrtSlt message handlers
void CPrtSlt::OnAdd()
{
CString strTemp;
int sl = m_SourceList.GetCurSel();
if(sl == LB_ERR) return;
m_SourceList.GetText(sl,strTemp);
if(tl == LB_ERR)
m_TargetList.AddString(strTemp);
else
m_TargetList.InsertString(tl++,strTemp);
}
void CPrtSlt::OnDel()
{
tl = m_TargetList.GetCurSel();
if(tl == LB_ERR) return;
m_TargetList.DeleteString( tl );
tl = LB_ERR;
GetDlgItem(IDC_ADD)->EnableWindow( FALSE );
}
void CPrtSlt::OnDblclkSourcelist()
{
CString strTemp;
int sl = m_SourceList.GetCurSel();
if(sl == LB_ERR) return;
m_SourceList.GetText(sl,strTemp);
if(tl == LB_ERR)
m_TargetList.AddString(strTemp);
else
m_TargetList.InsertString(tl++,strTemp);
}
void CPrtSlt::OnOK()
{
CString strTemp;
int count = m_TargetList.GetCount();
for(int i=0; i<count; i++)
{
m_TargetList.GetText(i,strTemp);
SourceList.Add( strTemp );
}
CDialog::OnOK();
}
void CPrtSlt::OnSetfocusPrintlist()
{
GetDlgItem(IDC_ADD)->EnableWindow( FALSE );
GetDlgItem(IDC_APP)->EnableWindow( FALSE );
if(m_TargetList.GetCurSel() == LB_ERR || m_TargetList.GetCount()==0)
GetDlgItem(IDC_DEL)->EnableWindow( FALSE );
else
GetDlgItem(IDC_DEL)->EnableWindow( TRUE );
}
void CPrtSlt::OnSetfocusSourcelist()
{
GetDlgItem(IDC_APP)->EnableWindow( TRUE );
if(tl == LB_ERR)
GetDlgItem(IDC_ADD)->EnableWindow( FALSE );
else
GetDlgItem(IDC_ADD)->EnableWindow( TRUE );
GetDlgItem(IDC_DEL)->EnableWindow( FALSE );
}
BOOL CPrtSlt::OnInitDialog()
{
CDialog::OnInitDialog();
GetDlgItem(IDC_ADD)->EnableWindow( FALSE );
GetDlgItem(IDC_APP)->EnableWindow( FALSE );
GetDlgItem(IDC_DEL)->EnableWindow( FALSE );
int count = SourceList.GetSize();
for(int i=0; i<count; i++)
m_SourceList.AddString( SourceList[i] );
SourceList.RemoveAll();
return TRUE;
}
void CPrtSlt::OnApp()
{
CString strTemp;
int sl = m_SourceList.GetCurSel();
m_SourceList.GetText(sl,strTemp);
m_TargetList.AddString(strTemp);
}
void CPrtSlt::OnSelcancelPrintlist()
{
tl = LB_ERR;
GetDlgItem(IDC_ADD)->EnableWindow( FALSE );
}
void CPrtSlt::OnSelchangePrintlist()
{
tl = m_TargetList.GetCurSel();
GetDlgItem(IDC_DEL)->EnableWindow( TRUE );
}
void CPrtSlt::OnDblclkPrintlist()
{
int sl = m_TargetList.GetCurSel();
if(sl == LB_ERR) return;
m_TargetList.DeleteString( sl );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -