⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stockdlg.cpp

📁 该项目是为PPC(PocketPc)使用者提供方便的理财事务.如,现金的借贷,债务处理,证券买卖,以及物品管 理等等。该项目的主要用户群是:PPC使用者.
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		delete pStock;*/
}
void CStockDlg::OnModify()
{	/*
	CString	str,str2;
	int iPos = -1;
	CString	tmpStr;
	CSection tmpSec,tmpSec2;
	
	POSITION	pos;
	pos = m_ctrStockList.GetFirstSelectedItemPosition();
	
	int Select= m_ctrStockList.GetNextSelectedItem(pos);
	//如果双击空白处
	if(Select==-1)
		return;
	CDealModifyDlg DealModifyDlg(this) ;
	CStock	*pStock = new CStock();
	DealModifyDlg.m_strAccountName = m_strStockName ;
	DealModifyDlg.m_strDealTime = m_ctrStockList.GetItemText(Select,0);
	DealModifyDlg.m_strCategory = m_ctrStockList.GetItemText(Select,1);
	
	if( m_ctrStockList.GetItemText(Select,2) == "收入")
		DealModifyDlg.m_strInOrOut = "in";
	else
		DealModifyDlg.m_strInOrOut = "out";
	DealModifyDlg.m_iAmount = _wtoi(m_ctrStockList.GetItemText(Select,3));
	
	if( DealModifyDlg.DoModal() == IDOK )
	{
		pStock->deal_money = DealModifyDlg.m_iAmount;
		pStock->deal_inout = DealModifyDlg.m_strInOrOut ;
		pStock->Account_Type = DealModifyDlg.m_strCategory;
		pStock->deal_time = DealModifyDlg.m_strDealTime ;
		
		pStockIni = new CIniReader(m_strStockName+".ini");
		
		if(! pStockIni->Load())
		{
			::AfxMessageBox(L"Can not load ini");
			delete pStockIni;
			pStockIni = NULL;
			return ;
		}
		
		if(! pStockIni->Parse())
		{
			::AfxMessageBox(L"Invalid format ini ");
			delete pStockIni;
			pStockIni = NULL;
			return ;
		}
		for(int i=0;i<m_iCount;i++)
		{
			
			CString	str;
			str.Format(L"%d",i);
			CSection	Info= (*pStockIni)[str];
			if(EqualSection(Info,pStock))
			{
				iPos = i;
			}
		}
		if(iPos == -1)
		{
			AfxMessageBox(L"修改失败");
			return ;
		}
		//向文件中增加信息:
		
		tmpSec2.m_SectionName.Format(L"%d",iPos);
		
		pStockIni->AddPair(L"deal_time",pStock->deal_time,tmpSec2.m_SectionName);
		pStockIni->AddPair(L"deal_type",pStock->Account_Type,tmpSec2.m_SectionName);
		tmpStr.Format(L"%d",pStock->deal_money);
		pStockIni->AddPair(L"deal_money",tmpStr,tmpSec2.m_SectionName);
		pStockIni->AddPair(L"deal_inout",pStock->deal_inout,tmpSec2.m_SectionName);
		pStockIni->Store();
		ReadIni(m_strStockName);
	
	
	}
	
	if(pStock)
		delete pStock;*/
	
}
void CStockDlg::OnDelete()
{
	
	POSITION	pos;
	pos = m_ctrStockList.GetFirstSelectedItemPosition();
	
	int Select= m_ctrStockList.GetNextSelectedItem(pos);
	//如果双击空白处
	if(Select==-1)
		return;
	
	
	if(::MessageBox(NULL,L"确定删除?",L"警告!",MB_OKCANCEL) != IDOK )
		return ;
//  pStockIni = new CIniReader("\\Program Files\\理财能手\\Data\\"+m_strStockName+".ini");

	pStockIni = new CIniReader(m_strStockName+".ini");
	
	if(! pStockIni->Load())
	{
		::AfxMessageBox(L"Can not load ini");
		delete pStockIni;
		pStockIni = NULL;
		return ;
	}
	
	if(! pStockIni->Parse())
	{
		::AfxMessageBox(L"Invalid format ini");
		delete pStockIni;
		pStockIni = NULL;
		return ;
	}
	for(int i=1;i<pStockIni->m_Sections.GetSize();i++)
	{
		CString value;
		pStockIni->m_Sections[i].m_item.Lookup(L"deal_time",value);
		if(value==m_ctrStockList.GetItemText(Select,0))
		{
			pStockIni->m_Sections.RemoveAt(i);
			if(i<m_iCount) //不是删除最后一项
			{
				CString tmp;
				AfxMessageBox(L"不是删除最后一项");
				for(int j=i;j<m_iCount+1;j++)
				{
					tmp.Format(L"%d",j-1);
					pStockIni->m_Sections[j].m_SectionName = tmp;
				}
			}
			else
				AfxMessageBox(L"删除最后一项");
			m_iCount--;
		}
		
	}
	CString tmpStr;
	tmpStr.Format(L"%d",m_iCount);
	pStockIni->AddPair(L"deal_count",tmpStr,L"Info"); //将帐户数自减1
	pStockIni->Store();
	
	ReadIni(m_strStockName);
	
	
}



BOOL CStockDlg::EqualSection(CSection sec, CStock *pStock)
{
	POSITION pos = sec.m_item.GetStartPosition();
	CString  time ,money,type,inout;
	while( pos != NULL)
	{
		String key;
		String value;
		
		sec.m_item.GetNextAssoc(pos, key, value);
		if(key == "deal_time")
			time = value;
		else if(key == "deal_type")
			type = value;
		else if(key == "deal_money")
			money = value;
		else if(key == "deal_inout")
			inout = value;
		
	}
	CString tmpStr;
//	tmpStr.Format(L"%d",pStock->deal_money);
//	if((time == pStock->deal_time)&&(type == pStock->deal_type)&&(money == tmpStr))
//		return true;
//	else 
		return false;
}

void CStockDlg::OnBtnstockhelp() 
{
	
}


void CStockDlg::OnDblclkListStock(NMHDR* pNMHDR, LRESULT* pResult) 
{
	
	*pResult = 0;
}

void CStockDlg::OnBuyIn()
{

	CString	str,str2;
	CString	tmpStr;
	CSection tmpSec,tmpSec2;
	CStock	*pStock = new CStock();
	CMakeStockDealBuyIn BuyInDlg(this) ;
	BuyInDlg.m_strStockAccount = m_strStockName;
	if( BuyInDlg.DoModal() == IDOK )
	{
		
	 
		pStock->deal_inout = L"买入" ;
		pStock->stock_code = BuyInDlg.m_strStockCode;
		pStock->deal_time = BuyInDlg.m_strDealTime ;
		pStock->price = BuyInDlg.m_fPrice ;
		pStock->stock_name = BuyInDlg.m_strStockName;

		//pStockIni = new CIniReader("\\Program Files\\理财能手\\Data\\"+m_strStockName+".ini");

		pStockIni = new CIniReader(m_strStockName+".ini");
		
		if(! pStockIni->Load())
		{
			::AfxMessageBox(L"Can not load ini");
			delete pStockIni;
			pStockIni = NULL;
			return ;
		}
		
		if(! pStockIni->Parse())
		{
			::AfxMessageBox(L"Invalid format  ");
			delete pStockIni;
			pStockIni = NULL;
			return ;
		}
		//向文件中增加信息:
		tmpSec2.m_SectionName.Format(L"%d",m_iCount);
		m_iCount++;
		tmpStr.Format(L"%d",m_iCount);
		pStockIni->AddPair(L"deal_count",tmpStr,L"Info"); //将帐户数自增1
		pStockIni->AddPair(L"deal_time",pStock->deal_time,tmpSec2.m_SectionName);
		pStockIni->AddPair(L"stock_name",pStock->stock_name,tmpSec2.m_SectionName);
		pStockIni->AddPair(L"stock_code",pStock->stock_code,tmpSec2.m_SectionName);
		tmpStr.Format(L"%d",pStock->stock_amount);
		pStockIni->AddPair(L"stock_amount",tmpStr,tmpSec2.m_SectionName);
		tmpStr.Format(L"%f",pStock->price);
		pStockIni->AddPair(L"price",tmpStr,tmpSec2.m_SectionName);
		pStockIni->AddPair(L"deal_inout",pStock->deal_inout,tmpSec2.m_SectionName);
		pStockIni->Store();
		ReadIni(m_strStockName);
	}
	
	if(pStock)
		delete pStock;

}

void CStockDlg::OnSellOut()
{
	CString	str,str2;
	CString	tmpStr;
	CSection tmpSec,tmpSec2;
	CStock	*pStock = new CStock();
	CStockSellOutDlg SellOutDlg(this) ;
	SellOutDlg.m_strStockAccount = m_strStockName;
	if( SellOutDlg.DoModal() == IDOK )
	{
		
	 
		pStock->deal_inout = L"卖出" ;
		pStock->stock_code = SellOutDlg.m_strStockCode;
		pStock->deal_time = SellOutDlg.m_strDealTime ;
		pStock->price = SellOutDlg.m_fPrice ;
		pStock->stock_name = SellOutDlg.m_strStockName;

		//tmpStr = "\\Program Files\\理财能手\\Data\\"+m_strStockName+".ini";

		tmpStr = m_strStockName+".ini";

		pStockIni = new CIniReader(tmpStr);
		
		if(! pStockIni->Load())
		{
			::AfxMessageBox(L"Can not load ini");
			delete pStockIni;
			pStockIni = NULL;
			return ;
		}
		
		if(! pStockIni->Parse())
		{
			::AfxMessageBox(L"Invalid format  ");
			delete pStockIni;
			pStockIni = NULL;
			return ;
		}
		//向文件中增加信息:
		tmpSec2.m_SectionName.Format(L"%d",m_iCount);
		m_iCount++;
		tmpStr.Format(L"%d",m_iCount);
		pStockIni->AddPair(L"deal_count",tmpStr,L"Info"); //将帐户数自增1
		pStockIni->AddPair(L"deal_time",pStock->deal_time,tmpSec2.m_SectionName);
		pStockIni->AddPair(L"stock_name",pStock->stock_name,tmpSec2.m_SectionName);
		pStockIni->AddPair(L"stock_code",pStock->stock_code,tmpSec2.m_SectionName);
		tmpStr.Format(L"%d",pStock->stock_amount);
		pStockIni->AddPair(L"stock_amount",tmpStr,tmpSec2.m_SectionName);
		tmpStr.Format(L"%f",pStock->price);
		pStockIni->AddPair(L"price",tmpStr,tmpSec2.m_SectionName);
		pStockIni->AddPair(L"deal_inout",pStock->deal_inout,tmpSec2.m_SectionName);
		pStockIni->Store();
		ReadIni(m_strStockName);
	}
	
	if(pStock)
		delete pStock;


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -