快速更改QLineEdit会使应用程序崩溃

时间:2010-08-25 23:33:31

标签: visual-studio-2008 visual-c++ qt

我有三个QLineEdit字段,其内容变化非常快(100 /秒)。 它以某种方式崩溃了应用程序。也许这是一个错误或我犯了错误。

以下是一些代码:

acc[0]->setText(QString("%1").arg(acceleration.x));
acc[1]->setText(QString("%1").arg(acceleration.y));
acc[2]->setText(QString("%1").arg(acceleration.z));

调用堆栈:http://pastebin.com/RmkZHTjk

有时我会收到此错误:

  

0x6518cbb3处的未处理异常   Test.exe中的(QtGuid4.dll):0xC0000005:   访问违规阅读位置   0x0000002c。

为此调用堆栈:http://pastebin.com/c1u53a0Z

我用QLabel试了一下,然后又收到了另一个错误:

  

0x751a9617处的未处理异常   Test.exe:Microsoft C ++异常:   内存位置的std :: bad_alloc   0x03aeea70 ..

调用堆栈:http://pastebin.com/G4yeiW2Y

1 个答案:

答案 0 :(得分:1)

让我们关闭它。这是弗兰克一周前发表评论的答案。

@RolandSoós:我觉得你从非UI线程调用setText()。这不起作用,QWidgets不是线程安全的。 - 弗兰克