![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Andrewshkovskii |
![]()
Сообщение
#1
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Раскрывающийся текст
Код выше, суть такая : на лейбле стоит эвент фильтр, он обрабатывает события нажатия/перемешения мышки, и соотвественно : На левый клик рисует точку черную , на правый белую. На левый клик и перетаскивание рисует линию черную, на правый белую. Так вот, если установить статично(в коде) , или же через spinbox редактор толщины линии, и менять её, то при толщине 1 - все Ок, при большей - не рисует точки, только линии. С чем это может быть связано?
Причина редактирования: поправил заголовок *ручка*->*перо*
|
|
|
Rocky |
![]()
Сообщение
#2
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: ![]() ![]() ![]() |
Непонял вот это:
? me это что? |
|
|
Andrewshkovskii |
![]()
Сообщение
#3
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
Rocky |
![]()
Сообщение
#4
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: ![]() ![]() ![]() |
Повторюсь...
Цитата const QPoint & QMouseEvent::pos () const Returns the position of the mouse cursor, relative to the widget that received the event. If you move the widget as a result of the mouse event, use the global position returned by globalPos() to avoid a shaking motion. See also x(), y(), and globalPos().
Это так и задумано? |
|
|
Andrewshkovskii |
![]()
Сообщение
#5
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Да, так и задумано.У меня стоит фильтр на этом виджете, который обрабатывает собития мышки, и координата pos() будет относительно этого виджета(там лейбл и в нем пикспам). globalPos() это будет относительно координат винды позиция , разве нет?И я не передвигаю виджет, я полчаю координату нажатия мышки, относительно виджета, на котором стоит фильтр.
Сообщение отредактировал Andrewshkovskii - 12.4.2010, 12:11 |
|
|
Rocky |
![]()
Сообщение
#6
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: ![]() ![]() ![]() |
хм... а как именно толщина линии задается?
|
|
|
Гость_Гость_Andrewshkovskii_*_* |
![]()
Сообщение
#7
|
Гости ![]() |
Толщина линии задается через самописный слот , который вызывается сигналом от слайдера/спинбокса valueChanged(int), в слоте просто ставиться drawPen.seetWidth(width)..
|
|
|
Rocky |
![]()
Сообщение
#8
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: ![]() ![]() ![]() |
Имхо быстрее всего будет проставить брэйкпоинты в нужных местах и продебажить. Сразу станет понятно какой код отрабатывает, какой реально параметр width приходит и пр.
|
|
|
Andrewshkovskii |
![]()
Сообщение
#9
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 351 Регистрация: 27.12.2008 Пользователь №: 467 Спасибо сказали: 18 раз(а) Репутация: ![]() ![]() ![]() |
Да проблема в том, что при изменении ширины пера, точки- не рисуются, а линии - да, вот что меня удивило.сейчас пофикшено путем изменения координаты ивента на +1.
|
|
|
Litkevich Yuriy |
![]()
Сообщение
#10
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9666 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: ![]() ![]() ![]() |
у меня тут вопрос возник, а должна ли точка быть больше точки (пикселя)?
|
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 21.4.2021, 20:11 |