로드 넷을 그리는 특정 대상이 있습니다. 그래서 나는 점 (x, y)의 숫자가 있고 그들을 연결하고 싶습니다 (drawLine 함수를 사용하여). 그들의 금액 (약 2 ~ 3 백만) 때문에 다른 스레드에서 처리해야하므로 문제는 어떻게해야합니까? 나는 드로잉을위한 특별한 영역을 가지고 있습니다 - QLabel. 나는 주 스레드 QPixmap을 통해 그것을 시도하고 모든 괜찮습니다,하지만 다른 스레드에서 신호/슬롯을 통해 그것을하려고 할 때 이미지가 나타납니다 : (다른 스레드의 QLabel에 페인트하는 방법
사실, 내가 좌표를 GUI로 변환 - drawLine 함수에 정수 인수가 있기 때문에 점을 부분적으로 만듭니 다. drawLine 함수에 정수 인수가 있기 때문에 (int x1, int x2, int y2)
이것은 내가 다른 스레드를 만드는 방법입니다. 하나의 기능을 실행, 그래서 내가 생각하는 가장 좋은 방법) 내가 미친 %가 될 것이기 때문에 QtConcurrent::run(this,&MainWindow::parseXML)
, 당신은 나에게 도움이되기를 바랍니다)
,691되는P.S 나는 QPixmap이 멀티 스레딩 도면에서 지원되지 않는다는 것을 읽었습니다. 그래서 지금 어떻게 해야할지 잘 모르겠습니다. 당신은 Qt는 GUI 스레드가 아닌 다른 스레드에서 당신의 그림을해야 할 경우 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.
지연된 신호/슬롯 연결은 가야합니다 –