![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
AD |
![]()
Сообщение
#1
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Есть виджет, который расположен на другом виджете где-то несначала.
Как узнать его местоположение? geometry().x(), geometry().y(), frameGeometry().x(), frameGeometry().y() - все выдают нули. Но виджет располагается далеко не в начале. Как узнать его положение? Вот прилагаю рисунок. Обведенный виджет - это тот, чье расположение хочется узнать![attachment=463:geometry.JPG] |
|
|
![]() |
SABROG |
![]()
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
FillBitmapInfo не нужен вообще имхо, это структура которая передается в SetDIBitsToDevice.
|
|
|
AD |
![]()
Сообщение
#3
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Цитата FillBitmapInfo не нужен вообще имхо, это структура которая передается в SetDIBitsToDevice. вах! А я и не додумался! ![]() Это все ясно! Дело в том, что именно благодаря коду в указанной функции происходит отрисовка карты. Каким образом заполнить QImage так, чтобы эффект был тот же? |
|
|
SABROG |
![]()
Сообщение
#4
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
Цитата FillBitmapInfo не нужен вообще имхо, это структура которая передается в SetDIBitsToDevice. вах! А я и не додумался! ![]() Это все ясно! Дело в том, что именно благодаря коду в указанной функции происходит отрисовка карты. Каким образом заполнить QImage так, чтобы эффект был тот же? Если код сахары брал картинку и рисовал на некоторую область и только, то просто тупо можно передать картинку в QLabel. Если помимо картинки надо на нее что-то рисовать или проводить трансформацию, или отображать только какую-то её часть, то QPainter + QImage, которому передается картинка и больше ничего не надо. |
|
|
AD |
![]()
Сообщение
#5
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Оказывается необходимо использовать функцию setPixel(). В качестве аргументов она имеет позицию картинки. Каким образом я могу разделить заполнение пикселей и саму отрисовку. В BITMAPINFO это и было сделано. А как это в QImage?
|
|
|
SABROG |
![]()
Сообщение
#6
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: ![]() ![]() ![]() |
Оказывается необходимо использовать функцию setPixel(). В качестве аргументов она имеет позицию картинки. Каким образом я могу разделить заполнение пикселей и саму отрисовку. В BITMAPINFO это и было сделано. А как это в QImage? Вот я в блоге недавно такое делал. http://vingrad.ru/blogs/sabrog/2009/01/27/...aya-animatsiya/ Т.е. рисую на картинку все что нужно, а потом эту картинку отрисовываю. Правда я рисовал QPainter'ом, но никто не запрещает через QImage::setPixel(x,y) |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 20.2.2025, 3:19 |