C++在工具栏中心拉伸QLineEdit
C++ Stretching QLineEdit across center of Toolbar
I四个QToolBars,按如下方式放置:
addToolBar(new BarLeft());
addToolBar(new SearchBar());
addToolBar(new BarRight());
addToolBarBreak();
addToolBar(new BottomBar());
左边的栏上有几个图标,右边的栏上也有几个图标。中心栏包含一个文本字段,我想在其他两个工具栏之间100%拉伸该字段。QT将自动将最后一个工具栏拉伸到空白区域,除非您另有指示。我发现结果告诉我要做以下事情,但没有奏效。
SearchBar::SearchBar() {
setMovable(false);
editor = new QLineEdit();
editor->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Preferred);
addWidget(editor);
}
结果是该字段垂直填充,但Qt在RightBar的右侧不显示任何内容,我给了它固定的宽度。如果我将策略翻转为editor->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Expanding);
,或者如果我放弃enter函数调用,结果完全相同。
为了直观地了解我想做什么,只需看看谷歌chrome,它有一个非常相似的界面:
[ Icon ] [ Icon ] [ ================ Text Field =============== ] [ Icon ] [ Icon ]
我的Qt版本是5.2.1
要使同一布局中的一个小部件比其他小部件更大,需要水平拉伸
editor = new QLineEdit();
QSizePolicy sp = editor->sizePolicy();
sp.setHorizontalStretch(1);
editor->setSizePolicy(sp);
addWidget(editor);
相关文章:
- wx工具栏:获取工具的位置和大小
- 带有下拉菜单的wx工具栏:对所选项目没有反应
- Microsoft 编辑默认工具栏时的 Visual Studio 'Unknown Bitmap Format'
- 单击工具按钮后,在GTKMM工具栏中更改工具按钮图标
- wxFormBuilder 工具栏间距
- C++在工具栏中心拉伸QLineEdit
- MFC 自定义 - 添加新工具栏
- 如何在两个其他两个之间设置工具栏
- Win32 工具栏下拉按钮消息处理
- 如何在 Q工具栏中添加可拉伸垫片
- 将图标添加到工具栏中的 QAction
- 在Qt上,如何在运行时更改工具栏中操作的图标
- 在 MFC 中创建带有事件的工具栏
- Win32工具栏和24位图像
- 自定义图像工具栏 WTL
- 如何将小部件添加到qt工具栏
- VS2010 C++MFC隐藏工具栏
- wxWidgets工具栏文本对齐方式
- gtkmm,如何设置工具栏
- 与 IE 保护模式兼容的自定义工具栏