Неправильный совет, ибо при нажатии на кнопку на одном виджете будет сделан пассивный граб мыши и к другим виджетам события приходить не будут.
2
billy4685:
На форме, на которой заводятся QLabel перегрузи
C++ (Qt)
bool QObject::eventFilter(QObject * watched, QEvent * event) [virtual]
и уже там отлавливай все события.
Не забудь через
C++ (Qt)
void QObject::installEventFilter(QObject * filterObj)
добавить для фильтровки все QLabel.
Update.
Хм..., есть подозрение, что так тоже не получится.
Попробуй так:
1. В QLabel перегрузи
C++ (Qt)
void mousePressEvent(QMouseEvent * event)
в которой игнорируй нажатие мыши через
C++ (Qt)
event->ignore();
2. В форме включи
C++ (Qt)
setMouseTracking( true );
3. В ней же перегрузи
C++ (Qt)
void mousePressEvent(QMouseEvent * event)
void mouseMoveEvent(QMouseEvent * event)
void mouseReleaseEvent(QMouseEvent * event)
и в них следи за соответствующим QLabel