Смена курсора на виджете |
Здравствуйте, гость ( Вход | Регистрация )
Смена курсора на виджете |
Elfinit |
30.9.2009, 9:32
Сообщение
#1
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
Доброе утро!
В общем, есть виджет PhotoFormatter, предназначенный для обрезки краёв фотографии. Может встраиваться в отдельный диалог, а может и в главное окно, в GraphicsView. При наведении курсора на края выделенной области он меняется, соответственно, на разные стрелки ресайза. А при наведении на выделенную область - на OpenHand, для перемещения выделенной области. Так вот, в случае диалога это срабатывает идеально, при работе в GraphicsView - курсор почти всегда не меняется. С чем это может быть связано? Вот код функции определения вида курсора: Раскрывающийся текст
Сообщение отредактировал Litkevich Yuriy - 1.10.2009, 6:06 |
|
|
kwisp |
30.9.2009, 14:36
Сообщение
#2
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
|
|
|
Elfinit |
30.9.2009, 20:49
Сообщение
#3
|
Участник Группа: Участник Сообщений: 127 Регистрация: 17.3.2009 Из: Казань Пользователь №: 619 Спасибо сказали: 7 раз(а) Репутация: 1 |
С чем это может быть связано? я думаю -- с координатами, надо проверить срабатывает условие или нет. а чего if`ы у тебя такие ужасные? что-то типа bool QRect::contains ( const QPoint & point, bool proper = false ) const не поможет? Проверял (выводил в консоль сообщение в каждом условии), всё нормально вроде с координатами. А if'ы...Самому не нравятся, конечно) Но если пользоваться bool QRect::contains ( const QPoint & point, bool proper = false ) const, что надо же 9 прямоугольников где-то помнить (четыре стороны, четыре угла, содержимое), да ещё менять их при перемещении границ. А так - есть один areaRect, для которого и проверяю нахождение в целевой окрестности |
|
|
Текстовая версия | Сейчас: 29.4.2024, 19:56 |