void QWidget::leaveEvent(QEvent *event){
QPoint position = this->mapToGlobal(this->pos());
int x = position.x(); int y=position.y();
this->cursor().setPos((x/2)+175, (y/2)+175);
std::cout<<x<<" ,"<<y<<std::endl;
}
Funktioniert im Prinzip so wie ich es möchte. NUR, wie wende ich das Leave Event auf ein bestimmtes StackedWidget an bzw. so, dass der Code nur im Falle das dessen CurrentIndex gesetzt ist, ausgeführt wird?
Du kannst zum Beispiel eine eventFilter fuer alle moeglichen Widgets installieren und in diesem auf dein gewuenschtes leaveEvent lauschen sowie eine Abfrag einfuegen ob fuer das Widget der Code ausgefuert werden soll.
@veeman, Danke dir vielmals! Funktioniert auf Anhieb (EventFilter), war genau was ich gebraucht habe und werde das auch direkt für meinen nächst geplanten Schritt verwenden können.
nach dem Versuch in der selben Methode auf ein KeyEvent (control Taste) zu prüfen um darauf hin den StackedWidget index auf 0 zurückzusetzen, bekomme ich folgende Fehlermeldung:
Fehler: no matching function for call to 'QKeyEvent::QKeyEvent(QEvent*&)'
QKeyEvent key = static_cast<QKeyEvent>(ev);