0
A
回答
0
您需要從線程發送一個包含QString變量的信號,並在包含標籤的Widget中創建一個插槽以接收該數據。
文檔:http://doc.qt.io/qt-5.7/signalsandslots.html
在這裏,你有你需要一個基本的原型:
在你customthread.h
signals:
portRead(QString text);
在你customthread.cpp
void process() //Your process function
{
QString text = readFromSerialPort(); // Your function that reads the SP
emit portRead(text)
}
在您的mainwindow.h
slots:
void setLabelText(QString text);
在你mainwindow.cpp
Widget::Widget(QWidget *parent)
{
CustomThread *thread = new CustomThread();
//Some code
connect(thread,SIGNAL(portRead(QString)),this,SLOT(setLabelText(QString)));
}
void setLabelText(QString text)
{
this->label->setText(text);
}
+0
謝謝@Florent Uguet。由於串行數據將被頻繁接收,因此需要在主窗口上顯示所有的數據,這也需要「滾動」。我如何實現滾動? – Aham
+0
@Aham這是另一個問題,你將不得不單獨提問。但請看http://doc.qt.io/qt-5.7/qscrollarea.html –
相關問題
- 1. RichFaces GUI顯示爲文本
- 2. JLabel不在GUI中顯示文本
- 3. 在matlab中顯示大綱文本gui
- 4. 的Android/Java的:「離屏」(持續顯示...)上顯示GUI
- 5. 在GUI中刷新文本面板的顯示
- 6. 我的Gui在點擊按鈕後不顯示輸出文本
- 7. 以編程方式突出顯示文本內的文本/通過GUI
- 8. Python tkinter在GUI上顯示CLI結果
- 9. tkinter GUI不顯示?
- 10. 文本上方的顯示框陰影
- 11. mbedtls_printf未顯示終端上的文本
- 12. iphone上的多列文本顯示
- 13. GUI類不顯示任何東西在顯示器上
- 14. 的Java GUI不會顯示
- 15. Java GUI(SWT) - 在執行其他操作時顯示文本,如閱讀文本
- 16. 顯示文本
- 17. 顯示文本
- 18. 顯示文本
- 19. 在使用RMI時GUI上不顯示文字
- 20. 如何在python2.7上使用tk顯示gui上的圖像
- 21. Jomsocial在頁面上顯示JQuery文本
- 22. 在谷歌地圖上顯示文本
- 23. SVG上未顯示文本元素
- 24. 在屏幕上顯示文本 - MATLAB
- 25. 顯示上次更改文本框
- 26. EditText上沒有任何顯示文本
- 27. 在鞦韆上顯示文本流
- 28. 在pivotitem上正確顯示文本塊
- 29. SL5在3D對象上顯示文本
- 30. 如何在DataGridViewImageColumn上顯示文本
您需要添加你的代碼的更多信息,到底爲什麼正在使用您的串行端口一個單獨的線程?作爲一般規則,更新GUI應僅從主線程完成,您可能希望切換到單線程設計或使用跨線程信號更新GUI。你可能想看看[Qt終端示例](https://doc.qt.io/qt-5/qtserialport-terminal-example.html)。 – Mike