Vous devez utiliser la fonction setTabButton:
vide QTabBar :: setTabButton (int index, la position ButtonPosition, QWidget * Widget)
Sets widget sur l'index de tabulation. Le widget est placé à gauche ou côté droit en fonction de la position.
Tout widget précédemment positionné est masqué.
La barre d'onglet prendra la propriété du widget et ainsi tous les widgets mis ici seront supprimés par la barre d'onglets quand il est détruit, sauf si vous séparément Reparent le widget après avoir défini un autre widget (ou 0).
Cette fonction a été introduite dans Qt 4.5.
Ceci n'est pas associé à QTabWidget
mais à QTabBar
.
Pour obtenir le QtabBar vous devez utiliser la fonction:
QTabBar * QTabWidget :: tabBar() const
Renvoie la QTabBar actuelle.
Exemple:
#include <QApplication>
#include <QLabel>
#include <QTabBar>
#include <QTabWidget>
#include <QLineEdit>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTabWidget w;
w.addTab(new QLabel("widget 1"), "1");
w.addTab(new QLabel("widget 2"), "2");
QTabBar *tabBar = w.tabBar();
tabBar->setTabButton(0, QTabBar::LeftSide, new QLineEdit("LineEdit0"));
tabBar->setTabButton(0, QTabBar::RightSide, new QLabel("label0"));
tabBar->setTabButton(1, QTabBar::LeftSide, new QLineEdit("LineEdit1"));
tabBar->setTabButton(1, QTabBar::RightSide, new QLabel("label1"));
w.show();
return a.exec();
}
Sortie:
Je ne sais pas ce que vous entendez par "tête", mais est [ 'QTabBar :: setTabButton'] (http: //doc.qt.io/qt-5/qtabbar.html#setTabButton) ce que vous cherchez? –
@ G.M. je parle de QTabWidget, setTabButton n'est pas disponible dans QTabWidget. Et en disant en-tête, je veux dire le nom de l'onglet qui est affiché sur le dessus, comme, –
secretgenes
"setTabButton n'est pas disponible dans QTabWidget". Non, mais il y a ['QTabWidget :: tabBar'] (http://doc.qt.io/qt-5/qtabwidget.html#tabBar) donc vous pouvez obtenir le' QTabBar' associé au 'QTabWidget'. –