2
我4個QToolBars的中心,其被放置爲這種拉伸QLineEdit的:C++工具欄跨過
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函數調用,結果完全相同。
對於在什麼我希望做一個視覺效果,只是看看谷歌瀏覽器,它有一個非常類似的界面:
[ Icon ] [ Icon ] [ ================ Text Field =============== ] [ Icon ] [ Icon ]
我的Qt版本5.2.1是
您是否確實需要使用工具欄?使用普通的佈局和小部件會更容易。 –
我最終使用帶有邊框佈局的單個工具欄來對齊所有內容,因爲無論如何我都將工具欄設置爲不可移動。感謝您的建議。 –