Russian Qt Forum
Ноябрь 25, 2024, 04:58 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: У QScrollArea не появляются полосы прокрутки  (Прочитано 3305 раз)
Hvzh
Гость
« : Ноябрь 02, 2015, 10:47 »

Доброго времени суток!

В дизайнере наваял интерфейс пользователя (файл прилагаю - mainwindow.ui). Последний элемент интерфейса - QLabel - добавляю в тексте:

Код:
    imageLabel = new QDrawLabel;
    imageLabel->setBackgroundRole(QPalette::Dark);
    imageLabel->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored);
    imageLabel->setScaledContents(true);
    imageLabel->setAlignment(Qt::AlignCenter);
    imageLabel->setText(tr("<H1 style=\"color:black\">No Camera</H1>"));
    ui->scrollArea->setWidget(imageLabel);


Далее в imageLabel помещаю изображение. Пытался так:

Код:
    ui->scrollArea->setMinimumHeight(ui->scrollArea->width()*0.66);
    imageLabel->setPixmap(QPixmap::fromImage(img.scaled(this->width(), this->height(), Qt::KeepAspectRatioByExpanding)));

и так:

Код:
    ui->scrollArea->setMinimumHeight(ui->scrollArea->width()*0.66);
    imageLabel->setPixmap(QPixmap::fromImage(img));

Вопреки моим ожиданиям полосы прокрутки не появилось, а изображение по непонятным мне причинам просто масштабировалось под текущий размер окна. Подскажите, где может скрываться ошибка? У меня есть несколько других вариантов интерфейса, в них изображение отображается нормально. Для сравнения прикрепляю еще один ui-файл, с ним все работает нормально.
Записан
Tamori Nao
Гость
« Ответ #1 : Ноябрь 02, 2015, 11:16 »

Посмотри в примерах Qt: image viewer example
Записан
Hvzh
Гость
« Ответ #2 : Ноябрь 02, 2015, 11:27 »

Посмотри в примерах Qt: image viewer example
Я с него и начинал Улыбающийся
Записан
Tamori Nao
Гость
« Ответ #3 : Ноябрь 02, 2015, 13:19 »

Попробуй открыть картинку с этим
Imagelabel->adjust size()
Записан
Hvzh
Гость
« Ответ #4 : Ноябрь 02, 2015, 13:33 »

Попробуй открыть картинку с этим
Imagelabel->adjust size()

Это все уже опробовано
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.062 секунд. Запросов: 21.