簡體   English   中英

Qt-將窗口提升到Linux DE上的當前桌面/工作區

[英]Qt - raise window to current desktop/workspace on Linux DE

前提:我的Qt程序(MainWindow)在FIRST Linux桌面上工作,而我在SECOND上工作。

程序調用以下代碼:

mainWindow->raise();

怎么了? 我的桌面環境切換到FIRST桌面,並在我的應用程序上顯示主窗口。

我想發生什么? 我的應用程序的主窗口已移至當前( SECOND )桌面,並顯示在此處。

Qt有可能嗎?如何?

Qt不支持完整的Linux DE / WM環境。 虛擬桌面就像不是真正的虛擬桌面。

這是一個復雜的問題。 我會嘗試解釋(英語不好)。

Linux X Window系統上的桌面和工作區: https : //www.circuitousroot.com/artifice/programming/useful/fvwm/viewports/index.html

Qt使用xcb: https ://xcb.freedesktop.org/這里有xcb連接: http ://doc.qt.io/qt-5/qx11info.html#connection沒有其他庫,這是很難的方法:xcb,ICCCM ,僅限EWMH ...對於我的應用程序,我有這個問題,但是稍后。 我在純C上只有骯臟的測試,並且可以正常工作。

您可以嘗試使用(或查看如何實現,我在這里觀看了)KWindowSystem: https ://api.kde.org/frameworks/kwindowsystem/html/classKWindowSystem.html(不具有KDE依賴!!!),但此類具有所有EWMH命令的所有功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM