Bonjour,
Je souhaiterais que lorsque l'utilisateur tente de quitter mon programme en cliquant sur la croix de la fenêtre ou en appuyant sur Ctrl + F4, une fenêtre s'ouvre pour lui demander s'il veut vraiment quitter sans sauvegarder, s'il veut quitter et sauvegarder ou s'il veut ignorer l'événement.
Ensuite, s'il décide de vraiment quitter l'application, je souhaiterais lui afficher une petite image pendant 1 seconde.
Malheureusement, dès que device.run() retourne false, je ne peux plus récupérer les événements de l'utilisateur pour savoir s'il veut quitter, quitter & sauvegarder ou ne rien faire.
J'ai beau rechercher, mais je ne trouve pas de solution à part recréer un device() :aie:.
Auriez-vous une idée de la manière dont je pourrais procéder ?
Cordialement,
Neckara.
Dernière modification par Neckara (22-05-2013 13:39:07)
Hors ligne
J'ai eu le même problème mais à part toucher les sources tu ne peux rien y faire. Sinon si c'est une application pourquoi ne pas utiliser une bibliothèque de fenêtrage (Qt par exemple) avec laquelle tu créerai la fenêtre. ensuite tu y intègre ta vue irrlicht. Tu auras accès à la fermeture de la fenêtre et certainement un meilleur rendu (la gui d'Irrlicht est basique et pas très pratique).
Hors ligne
Merci pour votre réponse,
Je n'aime pas vraiment Qt et pour la gui j'utilise CEGUI intégré à Irrlicht.
Je vais essayer de voir les sources d'Irrlicht pour voir si je ne peux pas m'en tirer avec un héritage du device.
Mais c'est vraiment dommage qu'on ne puisse pas intercepter les événements de fermeture de la fenêtre...
Hors ligne
J'ai trouvé une solution, je crée une classe IrrlichtHack qui hérite de CIrrDevice.
Dans cette classe, j'ajoute une méthode restart() qui passe la variable Close à true.
Il me reste ensuite plus qu'à faire un cast assez sale (mais 100% sûr) du device vers IrrlichtHack, ainsi je peux relancer le device quand je veux
Hors ligne
Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
---|---|---|---|---|
Corrections |
|
xhtml 1.0 css 2.1 Propulsé par FluxBB Traduit par FluxBB.fr |
882 membres 1429 sujets 11119 messages |
Dernier membre inscrit: LiseBuisson96 77 invités en ligne Aucun membre connecté RSS Feed |