2017-02-15 2 views
3

J'ai un QTabWidget avec un QTableWidget intérieur, comme l'exemple ci-dessous:Comment puis-je supprimer le « remplissage » d'un QTabWidget?

enter image description here

Mais il a un "padding" (au moins je pense qu'il est un rembourrage) dans le QTabWidget (marqué en rouge dans la figure). Comment puis-je supprimer ou étendre QTableWidget pour remplir la zone QTabWidget?

J'utilise Qt 5.3.

Répondre

0

Le problème semble être lié au "volet" marge de la QTabWidget.

je résolu le problème en utilisant ceci sur la feuille de style:

QTabWidget::pane { 
    border: 0 solid white; 
    margin: -13px -9px -13px -9px; 
} 
1

Essayez quelque chose comme ceci:

tabwidget.setStyleSheet("QTabWidget::pane { 
margin: 0px,1px,1px,1px; 
border: 2px solid #020202; 
border-radius: 7px; 
padding: 1px; 
background-color: #E6E6E3; 
}"); 

Hope this vous aider

+0

Malheureusement, il ne fonctionne pas. – KelvinS

0

Lorsque vous mettez QTableWidget-QTabWidget onglet, vous pouvez faire un clic droit dessus (QTabWidget) et sélectionnez Lay out -> Lay out vertically (par exemple, ou horizontalement), cela va ajouter un élément VerticalLayout et placez votre QTableWidget en elle, en remplissant l'onglet entier. Ensuite, sélectionnez nouvellement créé VerticalLayout, faites défiler jusqu'à la section Layout, et de là vous pouvez contrôler layoutLeftMargin, layoutTopMargin, layoutRightMargin et layoutBottomMargin propriétés:

Qt Creator, UI Editor, Layout Margins

Réglage tous à 0, vous donnera résultat souhaité (pas): les feuilles de style en cause

enter image description here

+0

Salut @Dmitriy, merci pour la réponse. En fait, j'ai ajouté une disposition verticale à mon QTabWidget (en utilisant le menu de présentation située en haut de la conception Qt) mais les options de mise en page ne figure pas sur mon éditeur de propriété. – KelvinS