在GUI的設計中,一定會遇到多線程的設計。多線程去處理事情,在有些設計裡面那個必然的。先看看這樣的一個例子:
這是我前幾天的完成的一個串口調試助手的圖。我們知道當我們打開串口的時候,數據接收區就可能有數據的反饋,然而在此時,我們還必須保證其它按鈕的功能。很典型這個地方需要使用兩個線程來完成這個操作。所以多線程的學習將是必要的。
下面我們就開始講demo了:
1.打開Qt Designer佈局這樣一些控件,我就不詳細介紹怎麼操作的了。如圖:
2.將.ui轉化成.py
3.新建一個.py來實現邏輯的控制:
我們使用3個互斥的按鈕來控制這個進度條,當點擊開始的時候,進度條開始移動,並且開啟另外一個線程,也開始計數,但點擊停止的時候,進度條停止計數,當點擊清除的時候,進度條清0,這兩個操作對另外開啟的呢個線程沒有任何影響。
其實也很簡單給大家一個開啟一個線程的模板類:
這個線程裡面要實現的動作就可以在run這個函數里面寫了。
開啟這個線程:
終止線程
可能需要需要給大家完整的代碼,才能看的更清楚
GUI的代碼:
2.邏輯代碼
閱讀更多 小5嵌入式 的文章