Je travaille sur un jeu de plateau et j'essaye de rendre les QWidgets (Rectangles) sélectionnables. J'ai donc un BoardView (hérité de QWidget) qui contient BuildingViews, PlantationViews (tous deux hérités de QWidget). Tout cela apparaît sur la fenêtre, mais ce n'est pas cliquable. Comment puis-je rendre ceci cliquable?make QWidget personnalisé sélectionnable
2
A
Répondre
2
Vous pouvez essayer de faire une mise en œuvre de QMouseEvent où l'ID widget est transmis, quelque chose comme ceci:
Dans la mise en œuvre de votre widget (par exemple YourWidget.cpp):
YourWidget::MouseReleaseEvent(QMouseEvent *event)
{
emit clickedWithMouse(this); // this is a signal, declared in YourWidget.h
}
Dans le fichier de jeu "principal" (par exemple Game.cpp):
Game::onButtonClicked(YourWidget* widget) // this is a public slot, you must connect all YourWidgets's clickedWithMouse signals to this slot (in Game object code, e.g. when initialising the board)
{
lastWidget = widget; //save the widget "ID" (lastWidget is a member of class Game)
someFunction(widget); //do something with the widget (if you wish)
}
+0
Merci, cela aide! – user2459549
Questions connexes
- 1. Android: make spinner item non sélectionnable
- 2. C# make zone de texte non sélectionnable
- 3. créer Qwidget personnalisé dans Qt?
- 4. Comment empêcher le redimensionnement d'un QWidget personnalisé?
- 5. make horizontal scrollable calendrier personnalisé
- 6. TextView Fond sélectionnable et sélectionnable
- 7. QWidget personnalisé n'hérite pas de la feuille de style parent
- 8. modifier parent QWidget dans l'enfant QWidget
- 9. Menu contextuel personnalisé avec sélectionnable activé dans AS3
- 10. Android ListView article de l'adaptateur personnalisé non sélectionnable
- 11. JQuery plugin sélectionnable/sélectionnable avec drag'n'drop?
- 12. make: fichier hiérarchique make
- 13. Problème de suppression de QWidget
- 14. Comment connecter QPushButton à un QWidget promu?
- 15. layout sizeHint qwidget
- 16. QWidget et xvimagesink problème!
- 17. Dupliquer un QWidget
- 18. problème QWidget et setVisible()
- 19. QWidget perd son parent
- 20. QWidget translucidité par pixel
- 21. Central QWidget [Qt]
- 22. QWidget dans scrollarea
- 23. Interaction jQuery UI sélectionnable: éléments dans l'élément sélectionnable
- 24. Texte sélectionnable dans wpf
- 25. GridView Row sélectionnable
- 26. Liste déroulante non sélectionnable
- 27. Dojo DateTextBox texte sélectionnable
- 28. Chronologie sélectionnable HTML/JavaScript
- 29. barre de défilement sélectionnable
- 30. sélectionnable - sauter éléments
Essayez-vous de déplacer ces widgets avec votre souris? Vous pouvez remplacer les événements de la souris pour déplacer les widgets, mais je vais devoir demander, pourquoi utilisez-vous 'QWidget's au lieu de' QGraphicsItem's? – thuga
Mon professeur a dit que QWidgets était celui à utiliser. Je ne vais pas passer à QGraphicsItems. Je ne veux pas déplacer ces widgets, juste les sélectionner. – user2459549
Tous les QWidgets sont cliquables. Je pense que votre question est mal formulée. Qu'avez-vous essayé et qu'est-ce que vous voulez? – RobbieE