qt中每一种控件,默认都实现了sizehit虚函数,在界面布局中,默认使用sizehit的大小。
但为什么同一中控件,sizehint也会因为内容不同而不同呢?比如QComboBox。
因为在QComboBox中,实现sizehint函数时,大小并不是固定的。大小随着内容的变大而不断扩大。
而我们重新继承QComboBox,重新实现sizehint,则大小就会固定下来。
QMyComboBox::QMyComboBox(QWidget *parent) :
QComboBox(parent)
{
}
QSize QMyComboBox::sizeHint() const
{
return QSize(400,100);
}