2013-01-22 63 views
5

我有一個Qt應用程序(在Linux上運行)應該在遠程計算機上運行的另一臺X服務器上打開一個額外的窗口。單個Qt應用程序可以在多個X顯示器上打開窗口嗎?

有沒有辦法在Qt中做到這一點?

我希望避免更復雜的設置,例如 - DMX(上的多個其它的X服務器頂部虛擬的X-server)http://dmx.sourceforge.net/,或 - 創建的額外窗口的第二應用,加之間的一些類型的通信這兩個應用程序

+0

程序中只能有一個'QApplication'對象,只有一個'QApplication'只與一個'Display'對話。這是一個基本限制。所以不,你不能在Qt中這樣做。 –

+0

謝謝,中午。這是我想知道的。起初我沒有看到您的答案,因爲您將它添加爲評論而不是答案。我想我無法避免創建第二個應用程序。 – ygramoel

回答

1

您可以嘗試產生一個新進程,並將其DISPLAY環境變量設置爲另一個X服務器。

嘗試首先從慶典做它,看它是否正常工作,因爲我不能完全肯定:

export DISPLAY=:0.0 
./my_qt_application 

與其它X服務器更換:0.0

+0

有效,但並沒有真正解決問題:我仍然會爲這兩個顯示器分開處理,並且需要實現它們之間的通信。 – ygramoel

+0

是的,我看到了您的其他答案,但需要一些時間閱讀QX11EmbedWidget的文檔。 – ygramoel

+0

你說得對,我把它刪除了。那麼,使用其他流程將是您最好的選擇。你可以嘗試直接使用Xlib,但我懷疑它會起作用,並且這不會很容易。我不認爲這裏有一個簡單的解決方案。 – sashoalm

相關問題