qt,tabs,qt5,qtabwidget,qtabbar , How to prevent tab buttons from shrinking in QTabWidget

How to prevent tab buttons from shrinking in QTabWidget


Tag: qt,tabs,qt5,qtabwidget,qtabbar

How do I prevent the tab buttons of a Qt5 QTabWidget from shrinking, thus obscuring the full tab names, when I shrink the containing window?

Here's a self-contained example of the problem:

#include <QApplication>
#include <QMainWindow>
#include <QtGui>
#include <QTableWidget>

makeTableWidget( QWidget* parent )
    QTableWidget* tableWidget = new QTableWidget( 20, 20, parent );

    for( int irow = 0; irow < 20; irow++ ) {
      for( int icol = 0; icol < 20; icol++ ) {
            QTableWidgetItem* newItem = new QTableWidgetItem( QString( "%1,%2" ).arg( irow ).arg( icol ) );
            tableWidget->setItem( irow, icol, newItem );

    return tableWidget;

main( int argc, char *argv[] ) {
    QApplication app( argc, argv );

    QMainWindow* mw = new QMainWindow();

    QTabWidget* tabs = new QTabWidget();

    tabs->setUsesScrollButtons( true );

    for( int itab = 0; itab < 10; itab++ ) {
            QTableWidget* tableWidget = makeTableWidget( mw );
            tabs->addTab( tableWidget, QString( "Table%1" ).arg( itab, 2, 10, QLatin1Char( '0' ) ) );

    mw->setCentralWidget( tabs );


    return app.exec();

When the main window is big enough, I can see the full names of each tab:

enter image description here

When I shrink the main window, however, the tab names get shortened with part of each name elided, even though I have enabled scrolling for the tab bar:

enter image description here

Since the tab-bar scrolling is enabled, it seems like it would work from a UI perspective to keep the tab-names at full size, so the user would be able to read each one unambiguously.

I need to know, however, how to modify the above code so that the tab button names do not shrink and thus get partially elided.

For the sake of brevity I'll spare description of my many misguided newbie experiments trying to figure this out.



You can disable text elision with:



Id in database using qt

I am new to qt. I have created a table in sql, and what I'm trying to do is to give an id whenever user adds data. For the first thing inserted it will be 1, second 2 and so on. So how to check what number was the last...

Qstring error. Saving from Textpool to string

I've been trying to make simple 'typing game' where program is checking if input = showcased word. I'm trying to use Qt GUI, so I've placed two text widgets, and "play" button. However, there is a problem with string (or QString). Error: no match for 'operator=' (operand types are 'QString'...

Update bindings to var properties in QML

If you take a look at this page it notes that bindings to var properties are not automatically updated when the object changes: Item { property var car: new Object({wheels: 4}) Text { text: "The car has " + car.wheels + " wheels"; } Component.onCompleted: { car.wheels = 6; }...

Sorting based on the rules set by a string variable

In my hypothetical app, I receive a list of hotels from the server. struct Hotel { std::string name; // e.g. Hilton, Ritz int stars; // In range [0..5], 0 stands for "unrated" int freeRoomCount; // Number of available rooms [0..N] int parkingPlacesAvailable; // Number of parking places availalble [0..M] }...

Disable a Tab in angularjs

I have created a demo at plnkr. I want to disable a particular tab say migration, I tried by writing disabled: true but it doesn't seem to work. http://plnkr.co/edit/0XgquovKIICmgGcSVSef?p=preview html code: <!doctype html> <div ng-app="TabsApp"> <head> <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.js"></script> <script src="http://angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.6.0.js"></script> <script src="example.js"></script> <link...

How to set User Agent in QtWebEngine QML application

NOTE: I was able to do that on QtWebKit QML using the QtWebView extension. Here I am interested in using QtWebEngine. My simple test application import QtQuick 2.1 import QtQuick.Controls 1.1 import QtWebEngine 1.0 ApplicationWindow { width: 800 height: 600 color: "lightgray" visible: true WebEngineView { id: webview url:...

Rotating a Label In Qt with Python

I'm somewhat new to Qt and was wondering how to rotate a Label that has a pixmap inside of it. I've tried somethings like this: def paintEvent (self, event): t = QtGui.QTransform() image = QtGui.QImage(_fromUtf8(":/icons/BOOM_OUT.png")) pixmap = QtGui.QPixmap.fromImage(image) self.label.setPixmap(pixmap) t.translate(400,300) t.rotate(45) p = QtGui.QPainter(self) p.setTransform(t) p.drawPixmap((-pixmap.width()/2),(-pixmap.height()/2), pixmap) p.end() I know...

How to avoid user to click outside popup Dialog window using Qt and Python?

I created a Dialog window using Qt Creator and Python. I would like that Window stays on the top of my Gui AND avoid users to click outside that Dialog Until this dialog was closed.

What does QHeaderView::paintSection do such that all I do to the painter before or after is ignored

This question is further development of this post and is different, though may seem similar as this one. I am trying to reimplement QHeaderView::paintSection, so that the background returned from the model would be honored. I tried to do this void Header::paintSection(QPainter * painter, const QRect & rect, int logicalIndex)...

How to pass QString variable to QFile?

getData gets the chosen file from a QTreeView and displays it on label 'test', enables the 'Apply' button, which when clicked calls setTheme void OptionsDialog::getData(const QModelIndex &index) { QString selected = model2->filePath(index); ui->test->setText(selected); ui->pushButton_apply_theme->setEnabled(true); } void OptionsDialog::setTheme() { //char *file = selected->toLatin1().data(); //const std::string file = selected->toStdString(); QFile qss(selected); qss.open(QFile::ReadOnly);...

How to add a gif image in the statusbar Qt [closed]

I'm pretty new to Qt and I was told that I can add a gif image to the status bar using the QMovie class. Can anyone tell how it can be done and is there any other way to do this too?

PyQT Qtabwidget hide and close certain tab

Is it possible to hide and close a certain tab in Qtabwidget? I have 5 tabs, two of them are plots and generated while using my software. First I want to hide the two plots in the beginning and second I want to make them closable after there were generated....

How can I make a QTextEdit widget scroll from my program

I have a QTextEdit widget with a vertical scroll bar. report_text = new QTextEdit(); report_text->setAcceptRichText(true); report_text->setReadOnly(true); report_text->setTextInteractionFlags(Qt::NoTextInteraction); report_text->setAlignment(Qt::AlignTop); report_text->setWordWrapMode(QTextOption::NoWrap); report_text->setFrameStyle(QFrame::NoFrame); report_text->setMinimumSize(600, 380); report_text->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); This is Qt 4.8 embedded. Now I...

Customizing QDateEdit style

How can i get the appearance of QDateEdit as shown on the image? I tried changing the stylesheet, but I dont know how to achieve the spacing between the button and the edit, nor how can I change the down arrow button....

QWidget.paintevent() vs QLabel.setPixmap()

I am trying to grab a widget and show it in another widget. Which one is less expensive? 1- using QWidget.paintevent() void MonitoringWidget::paintEvent(QPaintEvent *event) { if (m_mirrorWidget){ QPixmap mirrorPix = m_mirrorWidget->grab(); QPainter p(this); // p.drawPixmap(this->rect(),mirrorPix,mirrorPix.rect()); p.drawPixmap(ui->mirrorFrame->geometry(),mirrorPix,mirrorPix.rect()); update(); } return; } 2- QLabel.setPixmap()? QLabel mirrorLabel; QPixmap mirrorPix = m_mirrorWidget->grab(); mirrorLabel.setPixmap(mirrorPix )...

How can I override the member of (->) operator of a base class

Background: I have Qt generated UI classes with no common ancestor. I am subclassing a class (say, "Door") that uses one of these UI classes, and the derived class ("OakDoor") will use a different UI class, although much of the UI elements will have the same name. Until now I...

jQuery tab moves to last tab on button click

I am making an eCommerce web application in Laravel and I am stuck at a point to add products in the admin panel. There are 3 tabs for adding the products General Information Meta Information Product Options. I am using AJAX with for inserting the data in the database. My...

change QDir::rootPath() to program running path?

I have a Qt FTP server that selects C:/ as root path. I'm trying to change that to select the starting program location path. For example: If ftpserver.exe is located in H:/programs/ftpserver.exe, it must automatically set the ftp root path to H:/. Code: ui->lineEditRootPath->setText(settings.value("settings/rootpath", QDir::rootPath()).toString()); Code: void MainWindow::on_toolButtonBrowse_clicked() { QString...

load a thumbnail on QListWidget with reduced resolution

I need to reduce the resolution of the images that I add and show in a QListWidgtet. Now I use the next code but it does not show all the images because they are being loaded with full resolution void ImagesWizard::on_pbAddImages_clicked() { QFileDialog dialog(this); dialog.setDirectory(mInitPath); dialog.setFileMode(QFileDialog::ExistingFiles); dialog.setNameFilter(trUtf8("Images (*.jpg *.png *.tif...

Load Google Maps in a tab when tab is picked, and not from begining

I have a TabLayout with 2 tabs. First tab ( Main tab ) is a list of store in a listview Second tab is the same list in a Google Maps. I noticed that When I go by default in the first tab ( list ), the GPS icon appears...

connecting signals and slots with different relations

First of all I'd say I'm a noob to GUI programming. I use Qt 5.4. I came up with this code while watching voidRealms videos. connect(ui->horizontalSlider,SIGNAL(sliderMoved(int)),ui->progressBar,SLOT(setValue(int))); Obviously this connects slider movement with progressbar fill. This actually works like progressbarfill <- slidermovement. How can I make into a different relation? Like...

How to handle listview event while using new android sliding tabs technique?

I tried searching internet but I found all tutorials to be using old tabhost technique. I am using new toolbar and adding tabs under it. I want to display contents fetched from database in listview dynamically when that particular tab is focused. Following is my Activity code: [EDITED] public class...

Using QSimpleXmlNodeModel and QTreeView

I've been looking at ways to populate a QTreeView with data from an XML file. The XML will be simple. I've come across QSimpleXmlNodeModel and have been trying to figure out if this is suitable for my needs, but can't find any examples of its use. Can someone point me...

How to manipulate multiple Folders/Dir in QT?

I want to know how to manipulate directories until I get video files. Firstly the main Directory is "F:/TestingVideos/" Inside the test video there are files e.g:1. Cash Office ,2.Rosville Gate ,3. My Videos Each of this videos holds other folders for example Cash Office has a Directory of "F:/TestingVideos/Cash...

Loading animated gif data in QMovie

I'm very new to Qt (specifically PySide) and I'm trying write a script that loads an animated gif from file into a QByteArray and then into a QMovie. The reason for going from file to the QByteArray is because I cannot keep that gif file in memory. I want to...

Return const reference to local variable correctly

Additionally to the answers 1, 2, 3 and GotW88, assume the following methods QString createString() { return QString("foobar"); } const QString& getString() { return createString(); } This will yield the famous "warning C4172: returning address of local variable or temporary" with VS2013. Now if i changed the second method to...

C++ & Qt: Random string from an array area

In my small Qt application, I want to pick a random string out of an array after I clicked on a button. I've read many threads but nothing works for me. So in my slot there's an array with several strings in it. I also implemented <string>, <time.h> and srand....

How to differentiate a QNetworkReply is aborted or not?

I have the following code: connect(&netMgr, SIGNAL(finished(QNetworkReply*)), this, SLOT(loadFinished(QNetworkReply*)), Qt::UniqueConnection); reply = netMgr.get(qheader); How could I tell whether the loadFinished(); slot is triggered by calling reply->abort() or not?...

How to align GUI elements like this? Qt, C++

I need to align elements on GUI: actually, a single label, but at the specific position. I know how to use QGridLayout, QHBoxLayout, I know how to change the font to have the specified size. However, I don't know how to align the label like on this picture below. Any...

How to change the opacity of Qt MainWindow?

How to change the opacity of the Qt MainWindow by some values? My main window contains nothing but just somehow I need to change the opacity using keystrokes. It looks like this now. I tried to set using this->setWindowOpacity(0.5); didn't get anything opacity effect. ...

QEvent ownership

I want to send both predefined and custom QEvent to a Qt application. Is the event required be allocated on the heap or can I just pass the pointer to a object on the stack? QKeyEvent stackevent(QEvent::KeyPress); QKeyEvent* heapevent = new QKeyEvent(QEvent::KeyPress); QEvent * event; event = &stackevent; //valid ??...

Align horizontalcenter in Column

Column documentation explains how to achieve this: However, I would like to achieve this: That is, all items inside the Column should be horizontally aligned to the center. anchors.horizontalCenter: parent.Center does not work. How can I obtain the desired result?...

QT-FTP Upload Error

I'm trying to upload a simple txt file to ftp server but getting "QNetworkReply::ContentOperationNotPermittedError" reply from the server and i think it is about my file hierarchy. Here is the file order of my ftp server and my qt-ftp configuration : QUrl url("f13-preview.125mb.com/www/home/repo/test.txt"); url.setHost("f13-preview.125mb.com"); url.setUserName("1896230"); url.setPassword("mypassword"); url.setPath("f13-preview.125mb.com/www/home/repo/"); url.setScheme("ftp"); ...

Updating ac value for Qtimer

I am using qt tool for mini2440. I make a gui for i2c adc having starti2c and stopi2c. All things are working well: it reads value of signal when starti2c button press, but I want this value to be updated. I know that Qtimer can be used, but how can...

QT Combo Box of Line Pattern

i want to make a line pattern combo box in Qt same as it is shown in the picture , please tell me is it possible to make a combo box in Qt like shown in the picture. Any help would be appreciated Regards ...

Pro file directive: copy target to folder at build step

I have a TEMPLATE = subdirs project with 6 subprojects which build in specified order. I would like to copy the output file of project1 (it's target) to some folder. This folder is passed with LIBS += -L to project2 and project2 may use this file as a static library....

Repeat state on mouse click QML

Within the code I have a State, a Transition and a RotationAnimation defined. After the property change takes place, i.e. after the rotation is set to 360, the onClicked handler is rendered mute and the animation will never be played again after subsequent MouseArea clicks. Here is my current code:...

Unable to connect to mariadb database server with qt 4.8.5 and Ubuntu 12.04

I use the following code to connect to a MySQL server database. QSqlDatabase db_Server = QSqlDatabase::database("Test"); //find mysql driver db_Server = QSqlDatabase::addDatabase("QMYSQL","Test"); db_Server.setHostName("188.**.***.***"); db_Server.setPort(3306); db_Server.setDatabaseName("Test"); db_Server.setUserName("Test"); db_Server.setPassword("*********"); bool ret = db_Server.open(); if(ret) qDebug() << "Database open" else qDebug() << db_Server.lastError().text(); Lately they changed the server to mariadb and I assumed...

How can I wrap text in QGraphicsItem?

1) How can I wrap text in a QGraphicsTextItem to fit a fixed rectangle, with width and height ? Right now I am experimenting with creating a text, getting its bounding rectangle, and resizing it to fit the box - but I can't get wrapping. class TTT: public QGraphicsTextItem {...

Angular - Best way to load html page inside tab's content

I have multiple tabs in one master.html page and in every tab different tab*.html page is getting loaded. The page getting loaded inside tab's content has angularjs code Now issue here is when I load tab*.html separately is working as expected. Here Plunker for single page However, When I load...

onTabSelected Selected Not Called

I have just migrated my old actionBar to new TabLayout ( Support Material Design ) Everything is great but I can't intercept tab selection The method onTabSelected is only called the first time tabLayout is displayed, but when clicking tabs, nothing happens! Any idea what's wrong with this code? tabLayout...

Copy text and placeholders, variables to the clipboard

In my application I want generate random numbers or strings with a text in front of it. It is important for me that the text won't appear in my window, but instead gets copied to the clipboard. int randomnumber = rand() % 46 + 1; QClipboard *cb = QApplication::clipboard(); cb->setText("Just...

String concatenation not working in HTML declaration of TABS through PHP variables [closed]

The below code is not showing similar results as other one : <?php $week = array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'); $k=0; while ( $k<= 6) { $t=$k+1; echo "<li>"; echo "<a href=#panel-".$t." data-toggle='tab'>".$week[$k]; echo "</a></li>"; $k+=1; } $a=1; echo '<div class="tab-content"> <div class="tab-pane" id="panel-"'.$a.'> <div class="alert alert-info" role="alert"> <a href="#" class="alert-link">'.$week[$a].'Bazaars</a> </div>'; ?>...

Bootstrap Tabs First Tab dynamically loading without having to click on it

I use the Bootstrap tabs in my app and load some parts of the content of them dynamically via ajax calls. It works everything fine except the first tab... The tab is loaded, but the Ajax call is only submitted after a click on the tab. How can i make...

Change attribute value of an XML tag in Qt

I'm trying to change the language attribute of a .ts file in Qt using Qt itself. Here is the sample XML format. <?xml version='1.0' encoding='utf-8'?> <!DOCTYPE TS> <TS language="es_ES" version="2.1"> ... </TS> I have tried different ways, but no luck. Here are the methods I used. FileIOError FileIO::changeLanguageOfTsFile( QString tsFileName,...

Is there a way to prevent Qt slider dragging beyond a value?

I have implemented the interface where the user is drawing a frame and then moving to next frame which will increment the slider value by 1. User can also increment or decrement the slider value. But, if user has drawn only upto frame 20 then user should not be able...

TAB key in Code128 barcodes

I'm trying to create a barcode with a TAB key within it. It seems as though some generators (only found one thus far) uses ~ as a TAB key. But I can't seem to get it to work with any of the other generators. I've also read that Code128 A...

How can I have an animated system tray icon in PyQt4?

I am trying to create an animated systray icon for a pyqt4 app but am having trouble finding any examples in python. This is the closest I can find but it's in C++ and I don't know how to translate it over: Is there a way to have (animated)GIF image...

Must compile Opencv with Mingw in order to use in QT under Winodws?

I've visit these blogs https://zahidhasan.wordpress.com/2014/08/19/qt-5-3-1-64-bit-mingw-windows/ How to link opencv in QtCreator and use Qt library http://www.cnblogs.com/grandyang/p/4328896.html All of them are using Mingw to compile Opencv through Cmake. If I want to use Opencv in QT, is compiling with Mingw the only way? I have this question because I already compiled...

Multiple jQuery UI Tabs on Page: Close all other tabs when another is opened

I've got several rows of of separate jQuery Tabs. How do I get the separated tabs to close when another is opened (so at max, 1 is open at any given time on the page): Markup: <!-- First Leadership Row --> <div id="leadershipTabs1" class="leadershipTabs leadershipContentContainer contentContainer clearfix"> <ul> <li><a href="#leader1-slug">Leader...