我正在上计算机科学课,我们必须使用 GUI 制作一个计算器。我一直把头撞到墙上,试图获得输入。了解如何使用指针和 GetValue() 将输入作为 wxString 接收,但这对我没有好处,如果我无法将字符串作为双精度或整数获取,则无法对其执行操作。有谁知道如何将 wxString 转换为 Double?甚至是int?
提前致谢
我正在上计算机科学课,我们必须使用 GUI 制作一个计算器。我一直把头撞到墙上,试图获得输入。了解如何使用指针和 GetValue() 将输入作为 wxString 接收,但这对我没有好处,如果我无法将字符串作为双精度或整数获取,则无法对其执行操作。有谁知道如何将 wxString 转换为 Double?甚至是int?
提前致谢
为此,有两个函数 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。在这种情况下,您必须拆分字符串并分别解释所有数字。