【发布时间】:2010-11-30 19:00:11
【问题描述】:
我正在上计算机科学课,我们必须使用 GUI 制作一个计算器。我一直把头撞到墙上,试图获得输入。 了解如何使用指针和 GetValue() 将输入作为 wxString 接收,但这对我没有好处,如果我无法将字符串作为双精度或整数获取,则无法对其执行操作。 有谁知道如何将 wxString 转换为 Double?甚至是int?
提前致谢
【问题讨论】:
标签: wxwidgets calculator wxstring
我正在上计算机科学课,我们必须使用 GUI 制作一个计算器。我一直把头撞到墙上,试图获得输入。 了解如何使用指针和 GetValue() 将输入作为 wxString 接收,但这对我没有好处,如果我无法将字符串作为双精度或整数获取,则无法对其执行操作。 有谁知道如何将 wxString 转换为 Double?甚至是int?
提前致谢
【问题讨论】:
标签: wxwidgets calculator wxstring
为此,有两个函数 ToDouble 和 ToLong。
详情请看官方文档:
http://docs.wxwidgets.org/stable/wx_wxstring.html#wxstringtolong
http://docs.wxwidgets.org/stable/wx_wxstring.html#wxstringtodouble
编辑:示例:
wxTextCtrl ctrl;
// user has entered a number
double number;
if( !ctrl.GetValue().ToDouble( &number ) )
// handle error
else
// continue...
请注意:仅当您输入数字时才会起作用。如果您输入像 2+3 这样的术语,该函数应该返回 false。在这种情况下,您必须拆分字符串并分别解释所有数字。
【讨论】: