Qt 中 this->size() this->rect() event->size() 三者差别

测试代码:测试

void OsgEarthGraphicsView::resizeEvent(QResizeEvent* event)
{
    //if (scene())
    //{
    //    scene()->setSceneRect(QRect(QPoint(0, 0), event->size()));
    //}

    QRect rect = this->rect();
    std::cout << "this->rect()" << std::endl;
    std::cout << rect.x() << ' ' << rect.y() << ' ' << rect.width() << ' ' << rect.height() << ' ' << std::endl;

    QSize thissize = this->size();
    std::cout << "this->size()" << std::endl;
    std::cout << thissize.width() << ' ' << thissize.height() << std::endl;

    QSize size = event->size();
    std::cout << "event->size()" << std::endl;
    std::cout << size.width() << ' ' <<  size.height() << std::endl;
}

结果:this

 

 event->size()要比前二者要小一点,估计是窗口边框的缘故。感受和文档说的并不一致。spa

 

 

 

 

相关文章
相关标签/搜索