Вставка изображения на QWidget, как? |
Здравствуйте, гость ( Вход | Регистрация )
Вставка изображения на QWidget, как? |
Andrewshkovskii |
1.1.2009, 16:33
Сообщение
#1
|
Активный участник Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: 1 |
Не пойму, каким методом?
Например, есть у меня объект класса QWidget и QImage. Создаю объект QImage : QImage MyImage = new QImage("newyear09.gif","GIF"); как мне разместить это изображение на виджете? |
|
|
fsMark |
1.1.2009, 17:08
Сообщение
#2
|
Студент Группа: Участник Сообщений: 97 Регистрация: 23.4.2008 Из: г. Киров Пользователь №: 155 Спасибо сказали: 10 раз(а) Репутация: 1 |
На каком виджите ты хочешь размешать изображение? В общем случае его можно просто нарисовать на виджите, смотри методы отрисовки виджетов...
|
|
|
Andrewshkovskii |
1.1.2009, 17:10
Сообщение
#3
|
Активный участник Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: 1 |
да я попробовал следующие :
MyImage = new QImage("C:\\storage\\programming\\workspace\\1\\1.gif"); WidgetForImage = new QWidget; Painter = new QPainter(WidgetForImage); Painter->drawImage(0,0,*MyImage); // LayoutForImage->addWidget(MyImage); // this->addLayout(LayoutForImage); this->WidgetForImage->show(); - ноль реации... |
|
|
trdm |
1.1.2009, 18:19
Сообщение
#4
|
Дмитрий Трошин Группа: Участник Сообщений: 575 Регистрация: 12.1.2008 Пользователь №: 68 Спасибо сказали: 21 раз(а) Репутация: 6 |
и не должно быть.
ты должен выполнять этот код: drawImage(0,0,*MyImage); В событии виджета paintEvent(...). Есть вариант попроще: размести на виджете QLabel и засунь в QLabel пиксмап. |
|
|
Andrewshkovskii |
1.1.2009, 18:27
Сообщение
#5
|
Активный участник Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: 1 |
то есть нету простого способа создать виджет с изображением вставленным?..
|
|
|
Litkevich Yuriy |
1.1.2009, 19:31
Сообщение
#6
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
то есть нету простого способа создать виджет с изображением вставленным?.. виджет для изображений - QLabelизображение устанавливается методами: setPixmap ( const QPixmap & ) setPicture(const QPicture & picture) например:
|
|
|
Andrewshkovskii |
1.1.2009, 23:56
Сообщение
#7
|
Активный участник Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: 1 |
Хм..странно, но метка просто-напросто не показывается..
|
|
|
Litkevich Yuriy |
2.1.2009, 1:01
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
|
|
|
Andrewshkovskii |
2.1.2009, 1:06
Сообщение
#9
|
Активный участник Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: 1 |
да я проверял, и так и сяк...пишу вот так вот :
сплошной false показывает.. Сообщение отредактировал Litkevich Yuriy - 2.1.2009, 1:13
Причина редактирования: используй тэг code с параметром (code=cpp)
|
|
|
Litkevich Yuriy |
2.1.2009, 1:17
Сообщение
#10
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
вот тестовый пример:
Qt_test2.zip ( 37,28 килобайт ) Кол-во скачиваний: 304 скомпиль (qmake && make) и запусти отладочную версию ./build/tstd.exe посмотри, что пишет в консоль. затем в каталог ./build закинь файл av-64.gif и опять запусти отладочную версию ./build/tstd.exe |
|
|
Текстовая версия | Сейчас: 15.1.2025, 18:25 |