Проблема в строках:
page2->setPixmap(QPixmap("1.png"));
page2->setText("Alpha version 1.0");
QLabel не может иметь опции как для текста, так и для растрового изображения, поэтому, когда вы устанавливаете текст, QPixmap удаляется. Чтобы избежать этого, вы можете создать новый QWidget для второй вкладки вашего QTabWidget, добавить туда 2 QLabels, один из которых имеет текст, а второй - растровое изображение.
ОБНОВЛЕНИЕ: если после удаления page2->setText("Alpha version 1.0");
QPixmap по-прежнему нет, попробуйте выяснить, существует ли вообще файл "1.png". Попробуйте это, чтобы определить, существует ли файл и находится ли он там, где вы ожидаете.
qDebug()<<"File exists -"<<QFileInfo("1.png").exists()<<" "<<QFileInfo("1.png").absoluteFilePath();
ОБНОВЛЕНИЕ2:
Когда вы запускаете его из QtCreator (компилируете), ваш файл должен находиться в каталоге вашего проекта (рядом с файлом *.pro), когда вы запускаете его из исполняемого файла, он должен быть рядом с ним, если вы вызываете его как "1.png" . Кстати, если вы поменяете свой currentWorkingDirectory
- то возникнут следующие проблемы. Решение состоит в том, чтобы добавить файл qt recource в проект, добавить это изображение в recource и назвать его как QPixmap(:/1.png");
. А пока можно найти нужную директорию с QDir::currentPath()
, положить туда свой файл.
person
Shf
schedule
16.07.2013