0
크기 조정 정책에 대한 Qt 문서를 읽었으나 Qlabel의 새 크기에 맞게 이미지 크기를 변경하는 시나리오를 어떻게 얻을 수 있습니까? .새로운 GUI 창 크기에 맞게 이미지 크기가 변경됨
이
mainLayout:
toplayout:
QLabel
QPushButton
가 지금은
cv::Mat
이미지가 내 GUI 구조입니다. 나는
QPixmap
로 개종했다.
Window::Window(QWidget *parent): QDialog(parent)
{
// Widgets
browserButton = new QPushButton(tr("Open"));
imageLabel = new QLabel;
imageLabel->setAlignment(Qt::AlignHCenter);
imageLabel->setScaledContents(true);
// Connect Actions
connect(browserButton, SIGNAL(clicked()), this, SLOT(browserClicked()));
// Layouts
QVBoxLayout *topLayout = new QVBoxLayout;
topLayout->addWidget(imageLabel);
topLayout->addWidget(browserButton);
// Main Layout
QVBoxLayout *mainLayout = new QVBoxLayout;
mainLayout->addLayout(topLayout);
setLayout(mainLayout);
setWindowTitle("Image Browser");
}
이
은void Window::browserClicked()
{
// Get file name as QString
QString fileName = QFileDialog::getOpenFileName(this,
tr("Open Image"),
NULL,
tr("Image Files (*.png *.jpeg *.jpg *.bmp)"));
// Read file name as String not QString and store the image
m_original_CVimg = cv::imread(fileName.toStdString());
imageLabel->setPixmap(this->cvMatToQPixmap(m_original_CVimg));
}
나는 이미지의 크기를 사용자가 윈도우의 크기를 변경할 때마다 크기를 조정하고자하는 버튼입니다. 창을 확장하면 이미지도 확장되지만 창을 축소하면 문제가됩니다. 창의 크기는 이미지의 크기로 제한됩니다. 어떤 제안이든지
QLayout을 사용하지 않는 이유는 무엇입니까? – reggie
@reggie_jimac, 실제로 저는 책을 팔로우하고 있습니다. 지금까지 전문가는 아니지만 간단한 GUI를 할 수 있습니다. – CroCo