【VC开源代码栏目提醒】:网学会员为广大网友收集整理了,DlgKCPD.cpp,希望对大家有所帮助!
// DlgKCPD.cpp : implementation file
//
#include "stdafx.h"
#include "a1.h"
#include "DlgKCPD.h"
#include "ScrollPrintView.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgKCPD dialog
CDlgKCPD::CDlgKCPD(CWnd* pParent /*=NULL*/)
: CDialog(CDlgKCPD::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgKCPD)
m_iJsr = -1;
m_tRq = 0;
//}}AFX_DATA_INIT
this->m_listKcpd=NULL;
m_draw=new CDrawKCPD(this);
}
void CDlgKCPD::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgKCPD)
DDX_Control(pDX, IDC_EDIT1, m_editPh);
DDX_Control(pDX, IDC_BUTTON2, m_btnDel);
DDX_Control(pDX, IDCANCEL, m_btnCancel);
DDX_Control(pDX, IDC_BUTTON1, m_btnOk);
DDX_Control(pDX, IDC_DATETIMEPICKER1, m_tcRq);
DDX_Control(pDX, IDC_COMBO1, m_comboJsr);
DDX_CBIndex(pDX, IDC_COMBO1, m_iJsr);
DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER1, m_tRq);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgKCPD, CDialog)
//{{AFX_MSG_MAP(CDlgKCPD)
ON_BN_CLICKED(IDC_BUTTON2, OnButtonDelete)
ON_BN_CLICKED(IDC_BUTTON1, OnButtonOk)
ON_WM_MOVE()
ON_BN_CLICKED(IDC_BUTTON_PRINT, OnButtonPrint)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgKCPD message handlers
bool CDlgKCPD::InitnListKcpd()
{
CRect rect_nlist(10,150,700,350);
this->GetClientRect(&rect_nlist);
rect_nlist.top=110;
rect_nlist.left+=10;
rect_nlist.right-=10;
rect_nlist.bottom=340;
m_listKcpd=new CListKCPD;
m_listKcpd->Create(WS_CHILD|WS_VISIBLE|LVS_REPORT|WS_BORDER,rect_nlist,this,ID_NEWLISTLSXSDJ);
this->m_listKcpd->ModifyStyle(LVS_EDITLABELS, 0L); //禁止标题编辑
m_listKcpd->ModifyStyle(0L, LVS_REPORT); //设为Report类型
m_listKcpd->ModifyStyle(0L, LVS_SHOWSELALWAYS); //始终高亮度被选中的表项
m_listKcpd->ModifyStyle(0L, LVS_NOSORTHEADER);
// m_listKcpd->SetBkColor(RGB(0,200,200));
// m_listKcpd->SetTextBkColor(RGB(0,200,200));
m_listKcpd->ModifyStyle( LVS_OWNERDRAWFIXED,0L);
m_listKcpd->SetExtendedStyle( LVS_EX_FULLROWSELECT | //允许整行选中
// LVS_EX_HEADERDRAGDROP | //允许整列拖动
LVS_EX_GRIDLINES | //画出网格线
// LVS_EX_ONECLICKACTIVATE | //单击选中表项
LVS_EX_FLATSB //扁平风格的滚动条
// LVS_EX_UNDERLINEHOT
);
CString str;
// 1、先产生numTitle列
// m_listKcpd->SetItemCount(20);
int i=0;
m_listKcpd->InsertColumn( i, "仓库名称" );
m_listKcpd->InsertColumn( 1, "药品编号" );
m_listKcpd->InsertColumn( 2, "药品名称" );
m_listKcpd->InsertColumn( 3, "数量" );
// 2、插入1行
m_listKcpd->InsertItem(0,"");
// 3、调整列宽
RECT rect2;
m_listKcpd->GetWindowRect(&rect2);
int wid = rect2.right - rect2.left;
for( i=0; i<4; i++ )
{
m_listKcpd->SetItemText(0,i,"");
m_listKcpd->SetColumnWidth( i, wid/4 );
}
m_listKcpd->SetSubItemCanEdited(0);
m_listKcpd->SetSubItemCanEdited(1);
m_listKcpd->SetSubItemCanEdited(2);
m_listKcpd->SetSubItemCanEdited(3);
m_listKcpd->Invalidate(false);
return true;
}
BOOL CDlgKCPD::OnInitDialog()
{
CDialog::OnInitDialog();
InitBaseInfo();
InitnListKcpd();
this->m_editPh.SetWindowText(this->ChanShengPh());
::PostMessage(this->m_tcRq.GetSafeHwnd(),WM_ACTIVATE ,WA_CLICKACTIVE,0);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
bool CDlgKCPD::InitBaseInfo()
{
m_font.CreateFont(-12, 0, 0, 0, 400, FALSE, FALSE,
0,GB2312_CHARSET , OUT_DEFAULT_PRECIS,//ANSI_CHARSET
CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
VARIABLE_PITCH | FF_SCRIPT, "楷体_GB2312");//DEFAULT_PITCH FF_MODERN
m_headfont.CreateFont(-24, 0, 0, 0, 400, FALSE, FALSE,
0,GB2312_CHARSET , OUT_DEFAULT_PRECIS,//ANSI_CHARSET
CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY,
VARIABLE_PITCH | FF_SCRIPT, "楷体_GB2312");//DEFAULT_PITCH FF_MODERN
this->GetDlgItem(IDC_STATIC_KCPD)->SetFont(&m_headfont,true);
CRect rect;
this->GetClientRect(&rect);
rect.left+=10;
rect.right-=320;
rect.top+=10;
rect.bottom=90;
m_wt.Create("",WS_CHILD|WS_VISIBLE,rect,this,700);
rect=CRect(15,25,100,45);
this->m_wfRq.Create("日期:",WS_CHILD|WS_VISIBLE,rect,&m_wt);
rect.OffsetRect(0,25);
m_wfRq.SetFont(&m_font,true);
this->m_wfJsr.Create("经手人:",WS_CHILD|WS_VISIBLE,rect,&m_wt);
m_wfJsr.SetFont(&m_font,true);
this->m_comboJsr.SetParent(&m_wt);
this->m_tcRq.SetParent(&m_wt);
this->m_comboJsr.SetFont(&m_font,true);
this->m_tcRq.SetFont(&m_font,true);
m_tRq=CTime::GetCurrentTime();
this->m_tcRq.SetTime(&m_tRq);
CString sql;
sql.Format("select yg_name from tabyginfo");
this->m_runsql.RunSQL(sql);
_variant_t value;
while(!m_runsql.m_recordset->adoEOF)
{
value=m_runsql.m_recordset->GetCollect("yg_name");
this->m_comboJsr.AddString((char*)(_bstr_t)value);
m_runsql.m_recordset->MoveNext();
}
//this->m_iJsr=0;
this->m_comboJsr.SetCurSel(0);
// this->UpdateData(false);
return true;
}
void CDlgKCPD::OnOK()
{
// TODO: Add extra validation here
//CDialog::OnOK();
}
void CDlgKCPD::OnButtonDelete()
{
this->m_listKcpd->DeleteSelected();
}
void CDlgKCPD::OnButtonOk()
{
this->BeginWaitCursor();
this->EndWaitCursor();
if(!this->m_listKcpd->CheckAll())return ;
CString sql;int i=0;
_variant_t value;
CA1App * app=(CA1App*)AfxGetApp();
CString pd_ph;this->m_editPh.GetWindowText(pd_ph);
CString czy=app->m_sUserName;
CString jsr;this->m_comboJsr.GetWindowText(jsr);
CString rq;this->m_tcRq.GetWindowText(rq);
long l_sl,old_sl,ying_kui;
CString yp_id,yp_name,cangku;
int n=m_listKcpd->GetItemCount();
if(n<=0)
{
MessageBox("请输入登记信息","注意");
this->m_listKcpd->m_iEditedIndex=-1;
m_listKcpd->InsertItem(0,"");
::PostMessage(m_listKcpd->GetSafeHwnd(),WM_SETFOCUS,0,0);
::PostMessage(m_listKcpd->GetSafeHwnd(),SETNEXTITEMPHFOCUS,0,0);
return ;
}
try{
m_runsql.m_recordset->Close();
LRunSql::BeginTrans();
}
catch(_com_error e)
{
MessageBox(e.ErrorMessage());
}
for(i=n-1;i>=0;i--)
{
cangku=this->m_listKcpd->GetItemText(i,0);
yp_id=this->m_listKcpd->GetItemText(i,1);
yp_name=this->m_listKcpd->GetItemText(i,2);
l_sl=atoi(this->m_listKcpd->GetItemText(i,3));
old_sl=atoi(m_listKcpd->m_strlistNo.GetAt(m_listKcpd->m_strlistNo.Fin
上一篇:
Chatmain.pas
下一篇:
英文课程作业:电影库(Piddington library )建立方案分析