2013-04-06 23 views
2

我有一個簡單的PySide程序(我的第一個GUI程序),其中我只有兩個滑塊從-100到100.第一個滑塊使用zeromq將其值發送到硬件控制器。該控制器驅動一個硬件方向盤,但由於方向盤需要一些時間將其位置調整到所需的位置,因此我接收來自該輪的反饋,現在我想反映到它下面的第二個滑塊。這樣,第二個滑塊「跟隨」第一個顯示方向盤實際上有多遠:如何將zeromq輪詢整合到pyqt主循環中?

enter image description here

因爲我既接收更多或更少的發送zeromq消息同時我需要做一些事情zeromq輪詢。我以前曾與之合作過,但不是在pyqt程序中。所以我有點不知道在哪裏或如何在這個程序中加入zeromq輪詢。

我現在所擁有的代碼是在這裏:http://pastebin.com/8j5TDpkX

會有人有某種尖或暗示在何處納入ZMQ輪詢在那裏?

+0

我對zeromq一無所知,但你可以看看QSocketNotifier在套接字上獲取信號(zeromq文檔爲ioloop討論這個問題)。您也可以在不同的線程中進行輪詢並向主線程發送信號。另一種方法是使用QTimer定期發送信號來進行輪詢。 – xioxox 2013-04-07 11:04:28

回答

1

傳統的方式是使用ZMQ_FD選項到zmq_getsockopt(3)來獲得邊緣觸發的文件描述符,然後可以將其用於其他類型的事件循環。