亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? computview.cpp

?? 一個簡單的個人所得稅計算器,可以編輯稅率表和所在地列表.
?? CPP
字號:
// ComputView.cpp : implementation file
//

#include "stdafx.h"
#include "pitc.h"
#include "ComputView.h"
#include "ListCtrlArea.h"
#include "MainFrm.h"
#include "math.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CComputView

IMPLEMENT_DYNCREATE(CComputView, CFormView)

CComputView::CComputView()
	: CFormView(CComputView::IDD)
{
	//{{AFX_DATA_INIT(CComputView)
	m_strArea = _T("");
	m_dStart = 0.0;
	m_dTotal = 0.0;
	m_dTax = 0.0;
	m_dDeduct = 0.0;
	m_dAll = 0.0;
	m_dGet = 0.0;
	//}}AFX_DATA_INIT
}

CComputView::~CComputView()
{
}

void CComputView::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CComputView)
	DDX_Control(pDX, IDC_EDIT_TATOL, m_wndTatol);
	DDX_Text(pDX, IDC_EDIT_AREA, m_strArea);
	DDX_Text(pDX, IDC_EDIT_START, m_dStart);
	DDX_Text(pDX, IDC_EDIT_TOTAL, m_dTotal);
	DDX_Text(pDX, IDC_EDIT_TAX, m_dTax);
	DDX_Text(pDX, IDC_EDIT_DEDUCT, m_dDeduct);
	DDX_Text(pDX, IDC_EDIT_ALL, m_dAll);
	DDX_Text(pDX, IDC_EDIT_GET, m_dGet);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CComputView, CFormView)
	//{{AFX_MSG_MAP(CComputView)
	ON_WM_CREATE()
	ON_EN_CHANGE(IDC_EDIT_ALL, OnChangeEditAll)
	ON_EN_CHANGE(IDC_EDIT_DEDUCT, OnChangeEditDeduct)
	//}}AFX_MSG_MAP
    ON_MESSAGE(WM_UPDATE_AREA,OnUpdateArea)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CComputView diagnostics

#ifdef _DEBUG
void CComputView::AssertValid() const
{
	CFormView::AssertValid();
}

void CComputView::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CComputView message handlers

int CComputView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CFormView::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here
	
	return 0;
}

//響應(yīng)自定義的消息,用來更新顯示,有點麻煩,先不用它
void CComputView::OnUpdateArea(WPARAM wParam,LPARAM lParam)
{
	//AfxMessageBox("receive!");
    AREA_T *area_t;
	area_t=(AREA_T*)lParam;
	m_strArea=area_t->area;
	m_dStart=area_t->start;
	//UpdateData(FALSE);
	GetDlgItem(IDC_EDIT_AREA)->SetWindowText(m_strArea);
	CString str;
	str.Format("%.2f",m_dStart);
    GetDlgItem(IDC_EDIT_START)->SetWindowText(str);
}


void CComputView::Comput()
{
	UpdateData(TRUE);
	CString temp;
	if(m_strArea=="")
	{
		AfxMessageBox("請選擇所在地!");
		GetDlgItem(IDC_EDIT_AREA)->SetFocus();
		return;
	}

	if(m_dStart<0)
	{
		AfxMessageBox("起征點應(yīng)>=0!");
		GetDlgItem(IDC_EDIT_FROM)->SetFocus();
		return;
	}

	if(m_dAll<0)
	{
		AfxMessageBox("代扣前工資薪金總額應(yīng)>=0!");
		GetDlgItem(IDC_EDIT_ALL)->SetFocus();
		return;
	}
	
	if(m_dDeduct<0)
	{
		AfxMessageBox("代扣金額應(yīng)>=0!");
		GetDlgItem(IDC_EDIT_DEDUCT)->SetFocus();
		return;
	}

	if(m_dTotal<0)
	{
		AfxMessageBox("稅前工資薪金總額應(yīng)>=0!");
		GetDlgItem(IDC_EDIT_TOTAL)->SetFocus();
		return;
	}

	
	double dAll;
	dAll=((CPITCApp*)AfxGetApp())->Sswr(m_dAll,2);//保留2位小數(shù)

	double dDeduct;
	dDeduct=((CPITCApp*)AfxGetApp())->Sswr(m_dDeduct,2);//保留2位小數(shù)

	double dTotal;
	m_dTotal=dAll - dDeduct;
    dTotal=((CPITCApp*)AfxGetApp())->Sswr(m_dTotal,2);
	temp.Format("%.2f",dTotal);
	GetDlgItem(IDC_EDIT_TOTAL)->SetWindowText(temp);

	double dForTax,dStart;
	dStart=((CPITCApp*)AfxGetApp())->Sswr(m_dStart,2);
	dForTax=dTotal  - dStart;//應(yīng)納稅所得額
	dForTax=((CPITCApp*)AfxGetApp())->Sswr(dForTax,2);
    m_dTax=0;
    if(dForTax<=0)
	{
		GetDlgItem(IDC_EDIT_TAX)->SetWindowText("0.00");
		return;
	}

    CMainFrame *pMain;
	pMain=(CMainFrame*)(AfxGetApp()->m_pMainWnd);
	CListCtrlCess *pListCtrlCess;
    pListCtrlCess=&(pMain->m_pConfigViewCess->m_wndListCtrlCess);
	int count;
	CString strFrom,strTo;

	if(!(pMain->m_pConfigDoc->Exam()))//通過檢查后才能計算
	{
		return;
	}

    double dCess,dSub;
	int i=0;
	count=pMain->m_pConfigDoc->m_arrFrom.GetSize();
	while(i<count && dForTax>pMain->m_pConfigDoc->m_arrFrom.GetAt(i))
	{
		i++;
	}
	
	dCess=(pMain->m_pConfigDoc->m_arrCess.GetAt(i-1))*0.01;
	dSub=pMain->m_pConfigDoc->m_arrSub.GetAt(i-1);
	//temp.Format("dTax=%f,dForTax=%f,dSub=%f",dCess,dForTax,dSub);
	//AfxMessageBox(temp);
	double dTax;
	m_dTax=dForTax * dCess - dSub;
	dTax=((CPITCApp*)AfxGetApp())->Sswr(m_dTax,2);////保留2位小數(shù)
	temp.Format("%.2f",dTax);
	GetDlgItem(IDC_EDIT_TAX)->SetWindowText(temp);
	
	m_dGet=dTotal - dTax;
	m_dGet=((CPITCApp*)AfxGetApp())->Sswr(m_dGet,2);////保留2位小數(shù)
	temp.Format("%.2f",m_dGet);
	GetDlgItem(IDC_EDIT_GET)->SetWindowText(temp);
	///////////////

}

BOOL CComputView::PreTranslateMessage(MSG* pMsg) 
{
	// TODO: Add your specialized code here and/or call the base class
	if(pMsg->message == WM_KEYDOWN && pMsg->wParam == VK_RETURN )
	{
		CMainFrame *pMainFrame;
        pMainFrame=(CMainFrame*)(AfxGetApp()->m_pMainWnd);
		
    ////
		CString temp;
	    CWnd *pWnd=this->GetFocus();
	    if (pWnd->GetDlgCtrlID()==IDC_EDIT_ALL)
		{
		    //AfxMessageBox("OK!");
			
	            ::SendMessage(pMainFrame->GetSafeHwnd(),WM_COMMAND,ID_COMPUT,NULL);
                GetDlgItem(IDC_EDIT_DEDUCT)->SetFocus();
			
		}
		if(pWnd==GetDlgItem(IDC_EDIT_DEDUCT))
		{
		    //AfxMessageBox("OK!");
		
			    ::SendMessage(pMainFrame->GetSafeHwnd(),WM_COMMAND,ID_COMPUT,NULL);
			    GetDlgItem(IDC_EDIT_GET)->SetFocus();
			
		}
	}

	return CFormView::PreTranslateMessage(pMsg);
}


void CComputView::UpdateDisplay()//更新顯示
{
	CMainFrame *pMain;
	CListCtrlArea *pList;
	pMain=(CMainFrame*)(AfxGetApp()->m_pMainWnd);
	pList=(CListCtrlArea *)(&(pMain->m_pConfigViewArea->m_wndListCtrlArea));
	int count;
	count=pList->GetSelectedCount();
	if(count==0)
	{
		m_strArea="";
		m_dStart=0.0;
		m_dTax=0.0;	
		UpdateData(FALSE);
	}
	else
	{
		int m;
	    POSITION pos=pList->GetFirstSelectedItemPosition();
		m=pList->GetNextSelectedItem(pos);
		m_strArea=pList->GetItemText(m,0);
		m_dStart=atof(pList->GetItemText(m,1));
		m_dTax=0.0;	
	}
	CString temp;
	GetDlgItem(IDC_EDIT_AREA)->SetWindowText(m_strArea);
	temp.Format("%.2f",m_dStart);
    GetDlgItem(IDC_EDIT_START)->SetWindowText(temp);
	GetDlgItem(IDC_EDIT_TAX)->SetWindowText("0.00");
	GetDlgItem(IDC_EDIT_GET)->SetWindowText("0.00");

}

void CComputView::OnInitialUpdate() 
{
	CFormView::OnInitialUpdate();
	
	// TODO: Add your specialized code here and/or call the base class
	GetDlgItem(IDC_EDIT_ALL)->SetWindowText("0.00");
	GetDlgItem(IDC_EDIT_AREA)->SetWindowText("");
    GetDlgItem(IDC_EDIT_START)->SetWindowText("0.00");
	GetDlgItem(IDC_EDIT_TATOL)->SetWindowText("0.00");
	GetDlgItem(IDC_EDIT_DEDUCT)->SetWindowText("0.00");
	GetDlgItem(IDC_EDIT_TAX)->SetWindowText("0.00");
	GetDlgItem(IDC_EDIT_GET)->SetWindowText("0.00");
}

void CComputView::OnChangeEditAll() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CFormView::OnInitDialog()
	// function and call CRichEditCtrl().SetEventMask()
	// with the ENM_CHANGE flag ORed into the mask.
	
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);

//	if(Examine(m_dAll,2)!=TRUE)
		//return;
	CString temp;
	double dAll,dDeduct,dTotal;
	GetDlgItem(IDC_EDIT_ALL)->GetWindowText(temp);
	
	dAll=atof(temp);
	dAll=((CPITCApp*)AfxGetApp())->Sswr(dAll,2);
	//temp.Format("%.2f",dAll);
	//dAll=atof(temp);//取2位小數(shù)

	
	GetDlgItem(IDC_EDIT_DEDUCT)->GetWindowText(temp);
	
	dDeduct=atof(temp);
	dDeduct=((CPITCApp*)AfxGetApp())->Sswr(dDeduct,2);
	//temp.Format("%.2f",dDeduct);
	//dDeduct=atof(temp);
    
	dTotal=dAll - dDeduct;
	dTotal=((CPITCApp*)AfxGetApp())->Sswr(dTotal,2);
	temp.Format("%.2f",dTotal);
    GetDlgItem(IDC_EDIT_TOTAL)->SetWindowText(temp);
	
}

void CComputView::OnChangeEditDeduct() 
{
	// TODO: If this is a RICHEDIT control, the control will not
	// send this notification unless you override the CFormView::OnInitDialog()
	// function and call CRichEditCtrl().SetEventMask()
	// with the ENM_CHANGE flag ORed into the mask.
	
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);
    CString temp;
	double dAll,dDeduct,dTotal;
	GetDlgItem(IDC_EDIT_ALL)->GetWindowText(temp);
	dAll=atof(temp);
	temp.Format("%.2f",dAll);
	dAll=atof(temp);//取2位小數(shù)

	GetDlgItem(IDC_EDIT_DEDUCT)->GetWindowText(temp);
	dDeduct=atof(temp);
	temp.Format("%.2f",dDeduct);
	dDeduct=atof(temp);
    
	dTotal=dAll - dDeduct;
	temp.Format("%.2f",dTotal);
    GetDlgItem(IDC_EDIT_TOTAL)->SetWindowText(temp);
	
}

//檢查一個double是否滿足小于n位小數(shù)
BOOL CComputView::Examine(double d,int n)
{
	CString str;
	str.Format("%f",d);
	int len;
	len=str.GetLength();
	if(str.Find(".")==-1)
	{
		return TRUE;
	}
	

	int i;
	for(i=1;i<=n;i++)
	{
	    if(str.Mid(len-i,1)==".")
		{
		    return TRUE;
		}
	}

	return FALSE;
	

}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91色.com| 久久久久免费观看| 91精品国产色综合久久ai换脸| 91精品久久久久久久久99蜜臂| 日韩美女视频在线| 国产精品人人做人人爽人人添| 最新久久zyz资源站| 亚洲18女电影在线观看| 国产精品系列在线观看| 91在线免费看| 日韩一区二区电影| 国产精品久久久久婷婷二区次| 亚洲国产精品久久久久秋霞影院 | 亚洲美女屁股眼交| 免费观看一级特黄欧美大片| 成人激情免费网站| 日韩午夜在线播放| 一区二区三区精品| 国产精品亚洲午夜一区二区三区| 欧美在线一二三| 国产亚洲精久久久久久| 天天影视涩香欲综合网| 成人精品小蝌蚪| 日韩三级精品电影久久久| 国产精品美女一区二区三区| 蜜臀av性久久久久蜜臀aⅴ四虎| 91在线免费播放| 久久精品视频网| 蜜桃视频在线观看一区| 在线观看亚洲精品视频| 亚洲欧洲一区二区在线播放| 久久99国内精品| 这里只有精品视频在线观看| 一区二区三区精品| 不卡电影一区二区三区| 久久蜜桃av一区二区天堂| 日本亚洲视频在线| 777亚洲妇女| 亚洲制服丝袜在线| 色综合中文字幕| 国产精品三级av在线播放| 国产中文字幕一区| 欧美成人性福生活免费看| 婷婷开心久久网| 91福利视频在线| 亚洲免费视频成人| 一本一道久久a久久精品综合蜜臀| 国产亚洲欧美日韩在线一区| 男女激情视频一区| 日韩一区二区三区视频在线观看 | 亚洲欧美怡红院| 日本成人中文字幕在线视频| 欧美精品粉嫩高潮一区二区| 亚洲综合免费观看高清完整版 | 色综合久久综合| 国产精品国模大尺度视频| 懂色中文一区二区在线播放| 欧美激情一区二区在线| 国产suv精品一区二区883| 久久精子c满五个校花| 国产精品一区二区久久不卡| 久久综合久久鬼色中文字| 久久国产欧美日韩精品| 欧美精品一区二区高清在线观看| 免费的成人av| 亚洲精品一区二区三区在线观看 | 亚洲欧美日韩一区| 日本乱码高清不卡字幕| 亚洲一级二级三级| 欧美日本一区二区在线观看| 奇米综合一区二区三区精品视频| 欧美日韩高清一区二区三区| 久久精品国产亚洲aⅴ| 精品国产免费视频| eeuss鲁一区二区三区| 一区二区三区日韩精品| 51精品久久久久久久蜜臀| 九九在线精品视频| 亚洲色大成网站www久久九九| 91国产福利在线| 麻豆精品久久久| 亚洲国产精品av| 在线区一区二视频| 免费成人小视频| 国产精品无人区| 欧美日韩一二三| 国产一区二区三区美女| 中文字幕一区二区三区乱码在线| 欧美性做爰猛烈叫床潮| 国产自产视频一区二区三区| 亚洲美女偷拍久久| 精品久久一区二区| 色婷婷综合激情| 久久国产麻豆精品| 亚洲精品国产a久久久久久| 欧美一区二区免费视频| 国产精品夜夜嗨| 一区二区三区精品视频| 精品国产乱子伦一区| 色婷婷综合久久久久中文一区二区| 蜜桃精品视频在线| 一区二区高清在线| 久久精品亚洲精品国产欧美kt∨ | 91麻豆精品在线观看| 日韩和欧美一区二区| 中文子幕无线码一区tr| 欧美一卡二卡在线观看| 99久久亚洲一区二区三区青草| 婷婷一区二区三区| 亚洲欧美视频一区| 国产欧美日韩不卡免费| 日韩一级免费观看| 欧美日韩在线三区| 9人人澡人人爽人人精品| 麻豆一区二区三| 亚洲午夜激情网页| 国产精品不卡在线| 久久影视一区二区| 欧美一卡二卡在线| 欧美美女网站色| 91福利在线观看| 91丝袜高跟美女视频| 成人性生交大合| 国产精品一二三四| 精品一区二区三区视频| 日本va欧美va瓶| 天天综合网天天综合色| 国产精品久久久久aaaa樱花 | 国产不卡视频一区| 另类小说欧美激情| 日韩中文字幕区一区有砖一区| 亚洲欧美偷拍另类a∨色屁股| 国产欧美视频一区二区三区| 精品国产网站在线观看| 日韩欧美国产麻豆| 3atv一区二区三区| 欧美理论片在线| 欧美三级电影在线观看| 欧美又粗又大又爽| 欧美视频一二三区| 欧美写真视频网站| 欧美酷刑日本凌虐凌虐| 欧美老年两性高潮| 欧美一区二区三区电影| 欧美va天堂va视频va在线| 日韩欧美资源站| 欧美精品一区二区精品网| 2022国产精品视频| 国产欧美一区二区三区网站| 欧美高清在线视频| 国产精品久久久久久久久免费相片| 国产欧美一区二区三区在线看蜜臀 | 国产精品免费视频网站| 国产精品少妇自拍| 亚洲婷婷综合久久一本伊一区| 国产精品天干天干在观线| 中文字幕中文字幕一区| 亚洲人成在线观看一区二区| 一区二区三区色| 丝袜美腿亚洲一区二区图片| 日本成人超碰在线观看| 九九视频精品免费| 成人免费va视频| 色综合欧美在线视频区| 欧美人伦禁忌dvd放荡欲情| 91精品国产综合久久久久久久久久 | 免费在线欧美视频| 黄色日韩三级电影| 成熟亚洲日本毛茸茸凸凹| 成人国产在线观看| 欧美日韩在线亚洲一区蜜芽| 日韩欧美在线观看一区二区三区| 精品91自产拍在线观看一区| 日本一区二区三区免费乱视频| 一区二区三区在线看| 免费在线观看一区二区三区| 国产suv一区二区三区88区| 色88888久久久久久影院野外| 欧美一级久久久久久久大片| 日本一区二区三区四区在线视频 | 久久久久九九视频| 亚洲日本va午夜在线影院| 亚洲国产综合视频在线观看| 精品一区二区国语对白| 91社区在线播放| 日韩三级伦理片妻子的秘密按摩| 中文字幕中文字幕中文字幕亚洲无线 | 精品综合免费视频观看| 成a人片国产精品| 91精品国产美女浴室洗澡无遮挡| 久久精品欧美一区二区三区不卡| 亚洲摸摸操操av| 国内精品嫩模私拍在线| 欧美自拍偷拍一区| 日本一区二区久久| 日本欧美加勒比视频| 色综合久久久久| 久久久国产午夜精品| 日韩激情中文字幕| 欧美在线一二三|