Название: QGraphicsSceneHoverEvent как обработать событие наведения? Отправлено: iukash от Апрель 09, 2010, 13:45 Не могу обработать событие наведение мыши, все клики перемещение, отпускание кнопок обработал переопределив виртуальные функции у QGraphicsItem. А как обработать наведение мыши понять не могу. Нашел QGraphicsSceneHoverEvent в документации, делаю
Цитировать QPointF point=QGraphicsSceneHoverEvent::pos(); или так Цитировать float x=QGraphicsSceneHoverEvent::pos().x(); а он мне Цитировать main.cpp:15: error: cannot call member function 'QPointF QGraphicsSceneHoverEvent::pos() const' without object Что делать? Как обработать событие наведение мыши?Название: Re: QGraphicsSceneHoverEvent как обработать событие наведения? Отправлено: GreatSnake от Апрель 09, 2010, 14:36 void QGraphicsItem::setAcceptHoverEvents ( bool enabled )
Название: Re: QGraphicsSceneHoverEvent как обработать событие наведения? Отправлено: iukash от Апрель 09, 2010, 17:15 void QGraphicsItem::setAcceptHoverEvents ( bool enabled ) Блин, я по ходу вообще тупой. И что с этим Цитировать void QGraphicsItem::setAcceptHoverEvents ( bool enabled ) делать???? Название: Re: QGraphicsSceneHoverEvent как обработать событие наведения? Отправлено: ieroglif от Апрель 09, 2010, 17:38 void QGraphicsItem::setAcceptHoverEvents ( bool enabled ) Блин, я по ходу вообще тупой. И что с этим Цитировать void QGraphicsItem::setAcceptHoverEvents ( bool enabled ) делать???? делать тебе надо следующее: 1. выучить английский (что бы перевести слова set Accept Hover и Events и понять в чём смысл). 2. привыкнуть сразу лезть в документацию, если тебе дали что-то непонятное и читать там про это самое. (кстати, для того что бы нормально читать документацию - тебе надо выучить английский). Название: Re: QGraphicsSceneHoverEvent как обработать событие наведения? Отправлено: iukash от Апрель 09, 2010, 20:08 Цитировать выучить английский С радостью, но это не сделать за пару недель, заказал книгу, буду учить, но пока в нем ноль (в школе и институте учил немецкий)! А объяснять я никого не заставляю, не хочешь не пиши!Название: Re: QGraphicsSceneHoverEvent как обработать событие наведения? Отправлено: iukash от Апрель 09, 2010, 20:18 Цитировать выучить английский С радостью, но это не сделать за пару недель, заказал книгу, буду учить, но пока в нем ноль (в школе и институте учил немецкий)! А объяснять я никого не заставляю, не хочешь не пиши!Цитировать что бы перевести слова set Accept Hover и Events вот что дал переводчик Цитировать набор Принимает События Парения ну и что я должен был понять?Название: Re: QGraphicsSceneHoverEvent как обработать событие наведения? Отправлено: Homo_Ludenus от Апрель 12, 2010, 11:06 Дословный перевод зло.
void QGraphicsItem::setAcceptHoverEvents ( bool enabled ) Если enabled равно true, этот элемент будет принимать события перемещения над ним курсора мыши; в противном случае он будет игнорировать их. По-умолчанию элементы не принимают данные события. События перемещения мыши доставляются в том случае, когда нет других элементов, обладающих фокусом ввода мыши. Они посылаются когда курсор мыши входит в область элемента, когда он перемещается внутри его области и когда он её покидает. События перемещения мыши обычно используются для подсветки элемента когда на него наводится курсор и для отслеживания курсора мыши когда он находится над элементом (эквивалентноQWidget::mouseTracking). Элементы-родители получают события входа курсора мыши в область элемента прежде потомков и событие выхода курсора за область элемента после них. Элемент не получает событие выхода за область элемента если курсор переходит в область другого потомка; он не получит его пока курсор не выйдет за область, включающую области всех его потомков. Если родитель обрабатывает события потомков (setHandlesChildEvents()), он будет получать события перемещения мыши, перемещения и бросания когда переходит от одного дочернего элемента к другому, но он не получить ни события входа в область элемента и выхода за неё, ни события начала и окончания перетаскивания от имени его потомков. QGraphicsWidget с декорацией окна будет принимать события перемещения мыши независимо от значения acceptHoverEvents(). Эта функция была введена в Qt 4.4. Название: Re: QGraphicsSceneHoverEvent как обработать событие наведения? Отправлено: iukash от Апрель 12, 2010, 22:03 Homo_Ludenus спасибо, но я уже разобрался, а английский начал учить, не все сразу!
|