10

我正在尝试在我的应用程序中回收一些屏幕空间。我有一个搜索栏,它是一个基本的 QLineEdit 并占用空间。在我的菜单栏中,我很容易有足够的空间来容纳这个搜索框,但我不知道如何将 LineEdit 放入菜单栏中。

有人可以帮助我将其添加到菜单栏中吗?

我正在使用 Qt 4.7。

这是我正在尝试完成的图像。这是相当基本的图像,但我希望将菜单栏的右半部分用作搜索框。

在此处输入图像描述

4

2 回答 2

17

使用QWidgetAction。QWidgetAction 用于将自定义小部件插入到基于操作的容器中,例如工具栏。

这是向菜单栏添加进度条的示例:

QWidgetAction *widgetAction = new QWidgetAction(this);
widgetAction->setDefaultWidget(new QProgressBar(this));
menubar.addAction(widgetAction);
于 2011-08-23T06:09:29.427 回答
6

你可以使用

void QMenuBar::setCornerWidget ( QWidget * 小部件, Qt::Corner corner = Qt::TopRightCorner )

在菜单中添加您的小部件。

于 2013-01-30T12:08:33.227 回答