2013-10-31 78 views
1

我想有一個未修飾的窗口將在所有窗口的背景留的底部。的Qt :: WindowStaysOnBottomHint和無框標誌使不守我的Qt窗口上的所有窗口

爲此,我將兩個窗口標誌應用於此Qt窗口:Qt::FramelessWindowHintQt::WindowStaysOnBottomHint

如果我只應用第一個標誌,它將打開我的窗口。如果我只應用第二個標誌,我將有一個未修飾的窗口,但保留在所有窗口的背景中。

我不明白爲什麼,如果我申請兩個標誌我有兩種情況:

  1. 如果順序是:

    view->setWindowFlags(Qt::WindowStaysOnBottomHint); 
    view->setWindowFlags(Qt::FramelessWindowHint); 
    

    我有一個undecoraded但不會停留在一個窗口背景。

  2. 如果順序是:

    view->setWindowFlags(Qt::FramelessWindowHint); 
    view->setWindowFlags(Qt::WindowStaysOnBottomHint); 
    

    我有一個窗口,是背景 undecoraded但住宿

如何創建一個停留在背景中且未修飾的窗口?

回答

4

不知道關於Qt什麼我猜你可能想要的是:

view->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnBottomHint); 

標誌往往只是實現爲具有某些位整數集和bitwise or用於設置標誌的多個位。

+0

是的,這有效。謝謝! –