Qt中关于控件QTextEdit用法的疑问

south2000 2005-07-21 04:03:31
我在对话框上面放了一个控件QTextEdit,命名为myedit,希望让它显示信息。我想让它先显示“等待”,3秒后显示“完成”,如下
myedit->setText(QString::fromLocal8Bit("等待"));
sleep(3);
myedit->setText(QString::fromLocal8Bit("完成"));
可是,“等待”没有显示出来,而是有3秒的空白,然后直接显示“完成”。

我又这么写
myedit->setText(QString::fromLocal8Bit("等待"));
myedit->updateContents();
sleep(3);
myedit->setText(QString::fromLocal8Bit("完成"));
myedit->updateContents();
效果还是与前面的一样。

请问,如何才能达到我要的效果?
谢谢!
...全文
239 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
supergt2001 2005-07-23
  • 打赏
  • 举报
回复
你可以使用信号和槽来实现你需要的功能,
加个timer;
QTimer t;
t.singleShot(&t, 3000, slot(changeText());
happykevinxing 2005-07-22
  • 打赏
  • 举报
回复
先把
sleep(3);
myedit->setText(QString::fromLocal8Bit("完成"));
去掉看看显示什么
happykevinxing 2005-07-22
  • 打赏
  • 举报
回复
其实原因很简单,myedit->setText(QString::fromLocal8Bit("等待"));只是把任务发给服务器程序,并没有实际去显示内容,后面你又把进程sleep,这样根本不可能显示"等待"
happykevinxing 2005-07-22
  • 打赏
  • 举报
回复
哈哈,你知道什么是debug吗?
south2000 2005-07-22
  • 打赏
  • 举报
回复
happykevinxing(问题太多),你回答的是废话,

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧