2010-12-28 13 views
7

Voglio fare un'applicazione in Qt in cui le schede nella barra di QTab possono essere "sganciate" in modo che diventino una finestra mobile, o possono essere trascinate in un'altra QTabBar e "trasferite" in tale QTabBar. Il mio obiettivo è consentire all'utente di personalizzare completamente l'interfaccia trascinando i moduli l'uno nell'altro.Rendere le schede mobili in Qt

Se avete mai usato Adobe After Effects CS5, si ha l'esatto effetto che sto cercando. Ti permette di trascinare una scheda e renderla mobile come se fosse una finestra, caricarla in un'altra scheda e fare molto di più.

Quindi, se qualcuno mi potrebbe punto nella giusta direzione su come andare su questo, o anche dove avrei comincio che sarebbe grande!

risposta

10

Date un'occhiata al Qt Main Window Demo utilizza QDockWidget piuttosto che QTabBar di. Questo esempio dovrebbe includere la cartella QTDIR/demo/della tua installazione Qt.

Vedrete che non ci sono schede nella finestra, ma tenta di trascinare un po 'dock e rilasciarlo su un altro bacino di una vedrete che si crea una barra delle linguette. Inoltre, i dock possono spostarsi sul desktop. Questo comportamento è fornito da Qt e può essere abilitato o disabilitato semplicemente impostando alcuni flag per i dock. Controlla il codice per maggiori dettagli.

Spero che questo era quello che stai stavi cercando.

+0

Questo sembra DAVVERO male se non hai le tue schede in fondo che è un peccato :( – paulm