MFC的dc.TextOut输出问题 35
第二次计算残留了第一次计算的低位数字。请问大神怎么解决这个问题?核心代码如下:voidCDCDlg::OnButtonCalc(){//TODO:Addyourcontr...
第二次计算残留了第一次计算的低位数字。请问大神怎么解决这个问题?核心代码如下:void CDCDlg::OnButtonCalc() { // TODO: Add your control notification handler code here UpdateData(); //伤害减免(%) float fhujia = m_hj-m_gdz; fhujia = fhujia-(fhujia*m_bfb); float fshjm = fhujia/(fhujia+602)*100; CString cshjm; cshjm.Format("%.0f",fshjm); //真实伤害 float fzssh = m_gj*(1-(fshjm/100)); CString czssh; czssh.Format("%.0f",fzssh); CRect rect; CRect rect2; //获取控件位置,在其后面输出 GetDlgItem(IDC_STATIC_SHJM)->GetWindowRect(&rect);//获取控件的屏幕坐标 ScreenToClient(&rect);//转换为对话框上的客户坐标 GetDlgItem(IDC_STATIC_ZSSH)->GetWindowRect(&rect2);//获取控件的屏幕坐标 ScreenToClient(&rect2);//转换为对话框上的客户坐标 CClientDC dc(this); dc.TextOut(rect.right,rect.top,cshjm,strlen(cshjm));//输出伤害减免 dc.TextOut(rect2.right,rect2.top,czssh,strlen(czssh));//输出真实伤害}
展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询