QScrollArea 用法总结

参考:http://blog.csdn.net/liang19890820/article/details/52402002

基本用法

QLabel *imageLabel = new QLabel(this);
QPixmap pixmap(":/Images/head");
pixmap = pixmap.scaled(200, 200, Qt::KeepAspectRatio);  // 图片缩放
imageLabel->setPixmap(pixmap);
imageLabel->setStyleSheet("background: white;");  // 标签白色背景
imageLabel->setAlignment(Qt::AlignCenter);  // 图片居中

QScrollArea *scrollArea = new QScrollArea(this);
scrollArea->setBackgroundRole(QPalette::Dark);  // 背景色
scrollArea->setWidget(imageLabel);
scrollArea->setAlignment(Qt::AlignCenter);  // 居中对齐

设置大小

scrollArea->widget()->resize(260, 260);  // 手动调整大小
scrollArea->setWidgetResizable(true);  // 自动调整大小

获取与移除部件

获取

QWidget *widget = scrollArea->widget();
QLabel *pLabel = qobject_cast*>(widget);

移除

QWidget *widget = scrollArea->takeWidget();
QLabel *pLabel = qobject_cast*>(widget);

你可能感兴趣的:(Qt,Qt图像视图框架)