QGraphicsView本身是特别灵活的一种ui,能够自由响应各种动态操作。不过它最大的问题就是在加载好图像以后,将图像自适应贴合到界面大小的时候(fitInView()函数)没有反应。
这是因为fitInView函数在执行的时候,需要计算一下QGraphicsView的大小和图像大小,然后再计算出将图像缩放时候的比例系数,这一个步骤需要运算时间。如果是刚加载好QGraphicsView和图像就直接使用fitInView,会计算不过来。
最好的解决办法就是把fitInView()往后挪,给计算比例留够时间。
此外,如果是把QGraphicsView放置在QTabWidget界面里面,则需要打开一遍QGraphicsView所在的页码。才能够实现对于QGraphicsView的初始化,否则初始化没有完成,依然无法将图像自适应贴合到界面大小。