static
BOOL SetDlgItemDouble (HWND hwndDlg, int idControl, double dValue)
{ TCHAR szBuffer[32];
/* Note: wsprintf does not handle floating point values. */
#ifdef UNICODE
swprintf (szBuffer, TEXT("%4g"), dValue);
#else
sprintf (szBuffer, "%4g", dValue);
#endif
return SetDlgItemText (hwndDlg, idControl, szBuffer);
}
BOOL SetDlgItemDouble (HWND hwndDlg, int idControl, double dValue)
{ TCHAR szBuffer[32];
/* Note: wsprintf does not handle floating point values. */
#ifdef UNICODE
swprintf (szBuffer, TEXT("%4g"), dValue);
#else
sprintf (szBuffer, "%4g", dValue);
#endif
return SetDlgItemText (hwndDlg, idControl, szBuffer);
}
解决方案 »
- VS. NET 08 debug和release好的可执行文件在另外一台机器上不能运行
- 紧急求救贴:如何用FindWindowEx抓住子WINDOW的HANDLE?
- 第四届机器学习与控制论国际会议(ICMLC)亲历记
- win2000 中 wininit.ini 还好用吗? 我要重启机器后删除文件
- 帮忙!在对话框上的如何去掉图形?
- 连续失败42次了!exits with 0x3!!!!!救命!!!
- 高分求助!!
- ****谁能告诉我最新版的psdk在哪里下载****
- FloatControlBar,DockControlBar为什么总是运行时错误?
- 能否介绍一本程序调试方面的书
- [求助】请问一台电脑如何通过串口与两台电脑通信?
- 在线等.高分请教如何用vc2005生成一个VBScript可调用的dll?
double GetDlgItemDouble(HWND hDlg, int nlDDlgItem, BOOL* lpTranslated)
{ TCHAR szBuffer[256];
TCHAR* endptr;
if(GetDlgItemText(hDlg, nlDDlgItem, szBuffer, sizeof(szBuffer)))
{ const double dValue = _tcstod(szBuffer, &endptr);
if (lpTranslated) *lpTranslated = (*endptr=='\0');
return dValue;
}
else
{ if (lpTranslated) *lpTranslated=FALSE;
return 0;
}
}调用:
BOOL error;
double value, aVal;
value = GetDlgItemDouble(hWnd, ID_FILTER_OBSERVATION_VALUE, &error);
aVal = error ? value : 0.0;
double valueUp;
valueUp=10.10;CString str;str.Format("%f",valueUp);SetDlgItemText(IDC_EDIT_VUP,str);
CString str;
valueUp=10.10;
str.Format("%x",valueUp);
SetDlgItemInt(IDC_EDIT_VUP,str);
valueUp=10.10;
CString str;
str.Format("%10.2f",valueUp);
SetDlgItemText(IDC_EDIT_VUP,str);