Vorrei inserire uno spazio per separare la seconda scheda dal terzo. È possibile? Ho provato alcuni fogli di stile, ma visto che questo widget è abbastanza nuovo per me non ho avuto finora alcun successo.Come inserire uno spazio tra due schede in un QTabWidget?
risposta
Sì, è possibile, ma non è così ovvio. Ecco un modo in cui mi sono inventato qualche tempo fa.
Ogni volta che è necessario uno spazio tra due schede, inserire una nuova scheda tra le schede e rendere disattivata la nuova scheda chiamando QTabWidget::setTabEnabled(int index, bool enable)
. In questo modo non sarà più possibile interagire con la nuova scheda (a meno che la scheda non sia l'unica presente). È inoltre necessario impostare il seguente foglio di stile sul vostro QTabWidget
:
QTabBar::tab:disabled {
width: 100px;
color: transparent;
background: transparent;
}
Questo foglio di stile rende la nuova scheda invisibile (in realtà si fa tutte le schede con disabilità invisibile, quindi a meno che è OK, questo metodo non funziona per voi). È possibile regolare la larghezza dello spazio modificando il valore per width
nel foglio di stile.
Il risultato:
Si dovrebbe ottenere 100 per questo hack! –