我有一個特定的目標:繪製一個道路網。所以我有一些點(x,y),我想連接它們(使用drawLine函數)。由於他們的數量(大約2-3百萬),我需要在另一個線程中做,所以有一個問題,我應該怎麼做?我有一個特殊的繪圖區域 - QLabel。我試圖通過QPixmap在主線程中執行它,一切正常,但是當我嘗試通過另一個線程中的信號/插槽執行時,沒有圖像出現:(如何在另一個線程上繪製到QLabel上
實際上,當我將座標轉換爲GUI-座標他們成爲分數,所以我不知道如何畫他們,因爲drawLine函數具有整數參數:(int x1,int y1,int x2,int y2)
這是我如何創建另一個線程只運行一個功能,所以它是我認爲最好的辦法) QtConcurrent::run(this,&MainWindow::parseXML)
希望你能幫助我,因爲我會變得瘋狂%)
P.S我讀過QPixmap在多線程繪圖中不受支持。所以現在我不知道該怎麼做。 QPainter can be used in a thread to paint onto QImage, QPrinter, and QPicture paint devices. Painting onto QPixmaps and QWidgets is not supported. On Mac OS X the automatic progress dialog will not be displayed if you are printing from outside the GUI thread.
排隊的信號/插槽連接是要走的路 – 2013-04-29 20:19:56