QT QLabel setText不生效

下邊這句沒生效,Windows移植到Linux也沒生效,但是獲取文本能獲取到。

ui->lable_info->setText("測試....");//沒生效
QString info=ui->lable_info-text(); //可以拿到值

原因:
因爲setText()不會立即調用paintEvent進行繪圖。程序會等你退出循環後纔有機會進行繪圖。所以你看到的只是最後一次讀回來的值。
解決的辦法是:
label->setText()後,調用label->repaint()立即重繪。

解決方案:

ui->lable_info->setText("測試....");
ui->lable_info->repaint(); //立即刷新

親測有效。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章