GetDlgItem

  1. void CDlg1::OnBnClickedAdd()
  2. {
  3.     /*
  4.     int num1, num2, num3;
  5.     wchar_t ch1[10], ch2[10], ch3[10];

  6.     //GetDlgItem(IDC_EDIT1)->GetWindowTextW(ch1, 10);
  7.     //GetDlgItem(IDC_EDIT2)->GetWindowTextW(ch2, 10);

  8.     //另一种实现
  9.     //GetDlgItemText(IDC_EDIT1, ch1, 10);
  10.     //GetDlgItemText(IDC_EDIT2, ch2, 10);

  11.     //更加简便的实现
  12.     num1 = GetDlgItemInt(IDC_EDIT1);
  13.     num2 = GetDlgItemInt(IDC_EDIT2);


  14.     //num1 = _wtoi(ch1); //atoi的宽字符版
  15.     //num2 = _wtoi(ch2);
  16.     num3 = num1 + num2;

  17.     //_itow(num3, ch3, 10); //itoa的宽字符版,可以查阅MSDN
  18.     //GetDlgItem(IDC_EDIT3)->SetWindowTextW(ch3);
  19.     //SetDlgItemText(IDC_EDIT3, ch3);

  20.     SetDlgItemInt(IDC_EDIT3, num3);

  21.     // TODO: 在此添加控件通知处理程序代码
  22.     */


  23.     UpdateData();
  24.     m_num3 = m_num1 + m_num2;
  25.     UpdateData(FALSE);
  26. }


--GetDlgItem():接收一个控件ID,返回指向该窗口或控件的指针;
--GetWindowText():接收一个控件ID,获取其文本值;
--SetWindowText():接收一个文本值,设置对应控件的文本值;
--使用_wtoi和_itow实现wchar_t与int的转换

WCHAR(wchar_t)如何转换到float类型

方法一:
例子如下,先将WCHAR转换为LPCTSTR类型,然后再转化为char*类型,然后用atof转换为浮点型。
资料参照:在MSDN搜索关键词atof,因为在这里放连接会失效
简单举个例子,如下。
float size;
WCHAR szMessage[] ="gdsgsdgsd";
size=atof((char*)(LPCTSTR)szMessage);
这个方法某些情况似乎只能显示第一位,具体还不知道原因。


方法二:
用swscanf()函数可以很好解决wchar_t转换到float的问题。具体不多写,查一下 swscanf()用法即可。


http://blog.chinaunix.net/uid-26275986-id-3873571.html
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值