为什么要强制触发QResizeEvent
在某个widget中,放置了很多其他控件(如:QPushButton、QLabel等),widget初始化时,其内部的布局都是正确的。但某些情况我们需要对widget内部的控件进行赋值(如设置QLabel的文字),但是其内部控件的显示长度并未跟随文字长度而变化。
如果我们自己计算文字长度再来设定控件的大小,未免也太过繁琐。所以就想到了强制发送QResizeEvent事件来触发widget的内部重新进行布局。
如何强制触发QResizeEvent
this->resize(this->size() - QSize(1, 1));
this->resize(this->size() + QSize(1, 1));