2013-07-15 82 views
0

我正在創建一個Qt應用程序,我需要在覆蓋框中顯示內容(請參閱附加圖像)。當按下按鈕時,該框需要從底部底座後面向上滑動,並通過切換按鈕向下滑動。我嘗試了一個QWidget,但無法達到我想要的。此外,我不知道如何列出疊加框中的元素。元素是動態的或變化的。Qt覆蓋(丟棄)框

enter image description here

回答

0

堆疊順序部件是由自己在QObject層次樹順序定義。第一個元素是底部,每個元素都在前面。兒童在他們的父母之上,在限制在他們範圍內的小工具中,免費提供QML。

如果您希望滑動元素出現在其他所有元素的頂部,只需將其父元素放在其他元素上即可。

畢竟它位於播放列表頂部的底部控制欄之上,因此您已經爲您完成了所有工作。

如果您決定更明智地使用QML而不是QWidget,則同樣適用。那裏的動畫和狀態要容易得多。更不用說更具體的設計。

+0

整個應用程序是用C++編寫的。我可以在其中嵌入QML並擁有完全控制權嗎?像訪問信號和插槽一樣?如果你能給我一個關於如何動態創建列表的粗略想法,我會非常棒的。我有數據只剩下GUI部分。謝謝! – Killswitch

+0

是的,QML被實現爲使用現有的Qt基礎設施,屬性,信號和槽以及任何標記爲「QINVOKABLE」的方法都可以從QML調用。你可以單獨實現核心邏輯,封裝它,只提供信號和插槽連接到你想要的任何UI。除了連接之外,QML還具有綁定功能,它們的工作速度更快。 – dtech