有没有办法检测QDialog中的所有小部件(其上有布局)何时调整大小?
我根据小部件的宽度执行了昂贵的操作。问题是,当我启动QDialog窗口时,窗口小部件的宽度为90,然后一段时间后(据说调整大小完成后),宽度变为700(我在屏幕上看到它的大小)。
所以问题是:是否有一种方法/事件在第一次调整所有小部件时被触发?
答案 0 :(得分:2)
我认为你需要继承QDialog
并覆盖virtual void resizeEvent( QResizeEvent* event )
函数。像这样:
// protected override
void MyDialog::resizeEvent( QResizeEvent* event )
{
QDialog::resizeEvent( event );
// Check the size of dialog at this point. Or define a signal and emit from here.
}