メソッド hasHeightToWidth() と heightToWidth() をオーバーライドしようとしましたが、何らかの理由で機能しませんでした。使用できる完全な例はありますか?
アップ 1:
class MyWidget : public QWidget {
Q_OBJECT
public:
MyWidget() {
QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
sizePolicy.setHeightForWidth(true);
setSizePolicy(sizePolicy);
}
bool hasHeightForWidth() const override {
std::cout << __FUNCTION__ << std::endl;
return true;
}
int heightForWidth(int w) const override {
std::cout << __FUNCTION__ << " " << w << std::endl;
return w;
}
QSize sizeHint() const override {
return QSize(100, heightForWidth(100));
}
};
MyWidget インスタンスは QHBoxLayout に挿入されます。
qt5を使用しています。
hasHeightForWidth と heightForWidth が何度も呼び出される std::cout のショーをデバッグします