-
Problème de focus
Bonjour à tous.
J'ai quelques petits soucis. Je vais plutot mettre plusieurs posts que tous les mettre ici...
Je commence. Je voudrais récupérer le focus sur ma fenêtre principale une fois une boite de dialogue fermée. La boite de dialogue est ouverte après clic sur le 'Bouton1' décris dans la hiérarchie ci-dessous :
Voici ma hiérarchie simplifiée :
Fenetre
*******VBox
************HBox
******************Bouton1
******************Bouton2
************Label1
************Label2
************Eventbox
*********************Image
Quand je fais :
Code:
gtk_window_activate_focus (GTK_WINDOW(parent));
(parent étant Fenetre dans la hiérarchie), il m'appuie sur le bouton Bouton1 !
J'ai donc essayé sur d'autres widgets, en l'occurrence l'Eventbox mais naturellement, j'obtiens :
Code:
invalid cast from `GtkEventBox' to `GtkWindow'
Y a-t-il une astuce ou ne peut-on tout simplement pas le faire?
-
Resalut.
C'est bon j'ai trouvé. En fait, la fonction
Code:
gtk_widget_grab_focus(widget);
fonctionne parfaitement.
Donc la seule restriction, c'est que le widget passé en paramètre doit posséder l'attribut CAN_FOCUS, ce qui est beaucoup plus répandu (les plus classiques le possèdent) que le fait qu'ils soient des widget de type fenêtre...
Merci à la FAQ GTK+ ;)