首先,我正在使用 QtJambi 开发一个应用程序。当我使用 QStackedWidget 时,我遇到了这个问题,找不到合适的解决方案。所以我所做的是尝试隔离问题,我在以下代码中做了:
public class Test{
public static void main(String[] args){
QApplication.initialize(args);
QWidget main = new QWidget();
QVBoxLayout vbox = new QVBoxLayout();
QPushButton bot = new QPushButton("a");
vbox.addWidget(bot);
main.setSizePolicy(Policy.Maximum, Policy.Maximum);
vbox.setContentsMargins(0, 0, 0, 0);
vbox.setStretchFactor(bot, 1); //remove this line to have a totally different size
main.setLayout(vbox);
main.show();
QApplication.exec();
}
}
所以我想我可能遇到了一个错误(当然我可能是错的,我尝试了 qtjambi 4.7.1 和 4.7.0 两个版本,为 ubuntu 12.10 编译)并希望得到确认。
在我指出的代码行上,尝试删除它并且小部件意外更改大小,也许这是故意的?https://qt-project.org/doc/qt-4.8/qwidget.html#adjustSize说最小高度是100,但似乎不是这样,无论我是否使用扩展策略。