まず、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 であることを示していますが、拡張ポリシーを使用しているかどうかにかかわらず、そうではないようです。