1

我有一个 qx.ui.form.Spinner 对象,我正在从 XML 文件设置初始值。不幸的是,该值作为字符串返回,这导致 Firebug 中出现以下令人困惑的错误:

传入值“3”的方法 setValue 中类 qx.ui.form.Spinner 的属性值错误:无效!

在 Playground 中运行此示例不会产生任何错误,但未设置微调器:

// 创建一个按钮
var button1 = new qx.ui.form.Button("第一个按钮", "icon/22/apps/internet-web-browser.png");

// Document 是应用程序的根
var doc = this.getRoot();

var spinner = new qx.ui.form.Spinner(1, 1, 60);

doc.add(微调器);

// 在固定坐标处添加按钮到文档
doc.add(button1,
{
  左:100,
  最高:50
});

// 添加事件监听器
button1.addListener("执行", function(e) {
  spinner.setValue("3");
});

所以我的问题是:

  • 字符串值应该起作用吗?到目前为止,当数字实际上是字符串时,似乎很少出现问题。
  • 操场应该报错吗?
4

3 回答 3

2

要回答您的问题:

  • 不,字符串值不起作用。尝试使用 parseInt() 函数将字符串转换为整数。

  • 实际上 Playground 出现了问题,但 Playground 没有处理异常,尝试添加 try .. catch ,您将看到与您已经知道的完全相同的错误消息。

    尝试 { spinner.setValue("3"); } 捕捉 (e) { 警报(e); }

于 2010-12-06T19:51:37.980 回答
1

谢谢。我已经使用 parseInt() 让它工作并提交了一个错误报告:http ://bugzilla.qooxdoo.org/show_bug.cgi?id=4457

于 2010-12-09T09:10:47.497 回答
0

我敢说游乐场至少应该在其“日志”窗口中记录错误。您可能要考虑为此打开一个错误。

于 2010-12-06T22:00:18.667 回答