📄 stufflist.cpp
字号:
// StuffList.cpp : 实现文件
//
#include "stdafx.h"
#include "ProjectManage.h"
#include "StuffList.h"
#include "EditStuff.h"
// CStuffList 对话框
IMPLEMENT_DYNAMIC(CStuffList, CDialog)
CStuffList::CStuffList(CWnd* pParent /*=NULL*/)
: CDialog(CStuffList::IDD, pParent)
{
}
CStuffList::~CStuffList()
{
}
void CStuffList::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_LIST1, m_oListmateriel);
//DDX_Control(pDX, IDC_STATIC, m_wndPlaceholder);
}
BEGIN_MESSAGE_MAP(CStuffList, CDialog)
ON_WM_SIZE()
ON_BN_CLICKED(IDC_BUTTON2, &CStuffList::OnBnClickedButton2)
ON_BN_CLICKED(IDC_BUTTON1, &CStuffList::OnBnClickedButton1)
ON_NOTIFY(NM_CLICK, IDC_LIST1, &CStuffList::OnNMClickList1)
END_MESSAGE_MAP()
// CStuffList 消息处理程序
void CStuffList::OnSize(UINT nType, int cx, int cy)
{
CDialog::OnSize(nType, cx, cy);
CWnd * pWnd=GetDlgItem(IDD_STUFF_LIST);
if(pWnd!=NULL&&IsWindow(pWnd->m_hWnd))
pWnd->MoveWindow(0,50,cx,cy);
if(m_oListmateriel.GetSafeHwnd() == NULL)return;
CRect rc;
//获得组控件的尺寸
CRect rect;
GetClientRect(&rect);
//m_frame.GetWindowRect(rc);
//转换坐标系
//ScreenToClient(rc);
//改变list的尺寸
rect.top=40;
m_oListmateriel.MoveWindow(&rect);
// TODO: 在此处添加消息处理程序代码
}
void CStuffList::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
OnCancel();
}
void CStuffList::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
if(theApp.ProjID!="")
{
CEditStuff frm;
frm.DoModal();
LoadDataView();
}
else
{
AfxMessageBox("请选择基本信息!");
return;
}
}
BOOL CStuffList::OnInitDialog()
{
CDialog::OnInitDialog();
//AddSzControlEx(m_oListmateriel,0,100,0,100);
DWORD dwStyle;
RECT rect;
LV_COLUMN lvc;
dwStyle = m_oListmateriel.GetStyle();
dwStyle |= LVS_EX_GRIDLINES |LVS_EX_FULLROWSELECT|LVS_SHOWSELALWAYS ;
m_oListmateriel.SetExtendedStyle(dwStyle);
m_oListmateriel.GetClientRect(&rect);
lvc.mask = LVCF_TEXT | LVCF_SUBITEM | LVCF_WIDTH |LVCF_FMT;
lvc.fmt=LVCFMT_LEFT;
lvc.iSubItem = 0;
lvc.pszText = _T("编号");
lvc.cx = 50;
m_oListmateriel.InsertColumn(1,&lvc);
lvc.iSubItem = 1;
lvc.pszText = _T("用料名称");
lvc.cx = 100;
m_oListmateriel.InsertColumn(2,&lvc);
lvc.iSubItem = 2;
lvc.pszText = _T("存货编码");
lvc.cx = 80;
m_oListmateriel.InsertColumn(3,&lvc);
lvc.iSubItem = 3;
lvc.pszText = _T("规格型号");
lvc.cx = 90;
m_oListmateriel.InsertColumn(4,&lvc);
lvc.iSubItem = 4;
lvc.pszText = _T("单位");
lvc.cx = 60;
m_oListmateriel.InsertColumn(5,&lvc);
lvc.iSubItem = 5;
lvc.pszText = _T("数量");
lvc.cx = 60;
m_oListmateriel.InsertColumn(6,&lvc);
lvc.iSubItem = 6;
lvc.pszText = _T("价格");
lvc.cx = 50;
m_oListmateriel.InsertColumn(7,&lvc);
lvc.iSubItem = 7;
lvc.pszText = _T("总价格");
lvc.cx = 60;
m_oListmateriel.InsertColumn(8,&lvc);
lvc.iSubItem = 8;
lvc.pszText = _T("售后原因");
lvc.cx = 120;
m_oListmateriel.InsertColumn(9,&lvc);
lvc.iSubItem = 9;
lvc.pszText = _T("项目名称");
lvc.cx = 90;
m_oListmateriel.InsertColumn(10,&lvc);
lvc.iSubItem = 10;
lvc.pszText = _T("站点名称");
lvc.cx = 90;
m_oListmateriel.InsertColumn(11,&lvc);
// TODO: 在此添加额外的初始化
if(theApp.ProjID!="")
{
LoadDataView();
}
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
void CStuffList::LoadDataView(void)
{
m_oListmateriel.DeleteAllItems();
int numline=0;
this->m_Storage.OpenSql("StuffBill","StuffBill.ID, StuffBill.StuffName, StuffBill.StoresCode, StuffBill.SpecModel, StuffBill.Uint, StuffBill.Stuffnum, StuffBill.StuffCost, StuffBill.TotalCost, StuffBill.StuffDesc, ProjectTab.ProjectName,StuffBill.omtname","INNER JOIN ProjectTab ON StuffBill.ProjID = ProjectTab.ProjectID where StuffBill.ProjID="+theApp.ProjID+"");
if(!this->m_Storage.IsEof())
{
this->m_Storage.MoveFirst();
LV_ITEM lvitem;
lvitem.pszText="";
lvitem.mask=LVIF_TEXT;
lvitem.iSubItem=0;
this->m_Storage.MoveFirst();
CString name;
int nColumnCount=m_oListmateriel.GetHeaderCtrl()->GetItemCount();
while(!this->m_Storage.IsEof())
{
lvitem.iItem=numline;
m_oListmateriel.InsertItem(&lvitem);
for(int i=0;i<nColumnCount;i++)
{
this->m_Storage.GetFieldValue(i,name);
m_oListmateriel.SetItemText(numline,i,(LPCTSTR)(_bstr_t)name);
}
numline++;
this->m_Storage.MoveNext();
}
}
}
void CStuffList::OnNMClickList1(NMHDR *pNMHDR, LRESULT *pResult)
{
// TODO: 在此添加控件通知处理程序代码
CString mList[11];
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
if(pNMListView->iItem != -1)
{
/*CString ID,strempnumber,sCost,othercost,mdateTime;
ID=m_oListmateriel.GetItemText(pNMListView->iItem,0);
mList[0]=ID;
strempnumber=m_oListmateriel.GetItemText(pNMListView->iItem,1);
mList[1]=strempnumber;
sCost=m_oListmateriel.GetItemText(pNMListView->iItem,2);
mList[2]=sCost;
othercost=m_oListmateriel.GetItemText(pNMListView->iItem,3);
mList[3]=othercost;
mdateTime=m_oListmateriel.GetItemText(pNMListView->iItem,4);
mList[4]=mdateTime;*/
for(int i=0;i<11;i++)
{
mList[i]=m_oListmateriel.GetItemText(pNMListView->iItem,i);
}
CEditStuff frm;
for(int i=0;i<11;i++)
{
frm.SList[i]=mList[i];
}
frm.DoModal();
LoadDataView();
}
*pResult = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -