Как добавить QProgressBar в QMenuBar? - PullRequest
2 голосов
/ 20 июля 2011

Мне нужно добавить индикатор прогресса в мое приложение, но я пытаюсь минимизировать потерянное пространство в GUI. У моего QMenuBar есть только несколько корневых меню, и в дальнем правом углу этого виджета много пустого места. Есть ли способ добавить виджет QProgressBar в это пространство? Документация QMenuBar, кажется, указывает, что она поддерживает только текстовые меню, но также говорит: «Виджеты могут быть добавлены в меню, используя экземпляры класса QWidgetAction для их хранения». Я считаю, что это просто для добавления значков к пунктам меню, а не строка меню.

1 Ответ

4 голосов
/ 20 июля 2011

не точно.Вы можете добавить туда все, что захотите.

QWidgetAction* actProgressBar = new QWidgetAction(this);
QProgressBar* bar=new QProgressBar(this);
// setup progressbar here
actProgressBar->setDefaultWidget(bar);
menuBar->addAction(actProgressBar);

это добавляет индикатор выполнения в строку меню.

...