2011-05-11 131 views
1

我有使用Qt(對話框/ standarddialogs)排和改性,以便它顯示在每個屏幕上的對話框的示例性應用:Qt和多屏幕

for(int i=0;i<app.desktop()->screenCount();i++) 
{ 
    Dialog* dialog = new Dialog(app.desktop()->screen(i)); 
    dialog->show(); 
} 
return app.exec(); 

當應用程序的默認屏幕上的Xnest測試(一個從哪個應用程序開始)一切正常。但是,在另一個屏幕上,消息框中的圖標無法正確顯示。

distorted icons

這個問題可以在Solaris和Linux進行復制。但是,當我嘗試使用Xephyr而不是Xnest時,問題消失(在Linux上)。另一方面,這對於Xnest本身並不是問題,因爲Exceed問題也可以被複制(但圖標根本不顯示)。

有人看到過這種問題嗎?你認爲這可能是Qt或配置X服務器的問題嗎?或者,也許我需要用一些特殊的選項編譯Qt?

+0

我從來沒有在KDE上看到過這個問題。也許這是圖標圖像格式的問題? – sje397 2011-05-11 12:47:34

+0

我懷疑它,因爲它在默認屏幕中的應用程序的相同實例中工作(在這種情況下爲0)。 – 2011-05-11 13:47:00

回答

0

這似乎是Qt X11圖形系統中的一個bug。如果我將QT_GRAPHICSSYSTEM設置爲raster圖標顯示正確。