FORUMS PROFESSIONNELSWINDEV , WEBDEV et WINDEV Mobile
OuvreFille ou OuvreFenêtreMobile ?
Débuté par Pokedev, 15 mar. 2016 00:50 - 11 réponses
Membre enregistré 156 messages
Posté le 15 mars 2016 - 00:50
Pour ouvrir d'autres fenêtres depuis une première fenêtre, mieux vaut-il utiliser OuvreFille ou OuvreFenêtreMobile ?
Membre enregistré 68 messages
Posté le 15 mars 2016 - 08:58
Hello, Selon la doc, OuvreFenetreMobile est dédiée au mobile et remplace donc OuvreFille. Cependant, si tu ne développes que pour Android, je te conseille Utilise() pour bien fermer tes précédentes fenêtres (fait quand même attention à l'enchainement). Cordialement
Membre enregistré 33 messages
Posté le 24 août 2016 - 11:46
je ré-ouvre ce ticket car j'ai un pb similaire. j'utilise la fonction utilise dans mon appli car elle permet la fermeture auto de la fenêtre précédente. ce qui nous est très utile car nous avons notre propre gestion d'enchainement des fenêtre. par contre, cette fonction n'est pas compatible Windows APP 10 ni IOs Du coup nous avions implémenter la fonction ouvrefenetremobile par contre, celle ci ne ferme pas la fenêtre précédente. y-a-t-il un moyen de mettre en place le même fonctionnement que la fonction utilise via ouvrefenetremobile ? Qq'un a-t-il déjà fait ça ? Merci d'avance
Membre enregistré 637 messages
Posté le 24 août 2016 - 11:53
Bonjour, Il faut utiliser OuvreFille. Ensuite, dans le code de fermeture de la fenêtre fille renvoyer un mot clé. Par exemple Renvoyer "FenTotoFermée". Ensuite, dans le code de fermeture d'une fenêtre fille de la fenêtre appellante, il suffit de tester si la valeur renvoyée correspond à ce mot clé. Si le mot clé correspond, on ferme la fenêtre ou pas, selon... Bon Dév. Cdlt - Eric. -- Eric DELATTREhttp://www.yoosite.fr
Membre enregistré 33 messages
Posté le 24 août 2016 - 13:40
Eric67 a écrit : Bonjour,
Il faut utiliser OuvreFille. Ensuite, dans le code de fermeture de la fenêtre fille renvoyer un mot clé. Par exemple Renvoyer "FenTotoFermée".
Ensuite, dans le code de fermeture d'une fenêtre fille de la fenêtre appellante, il suffit de tester si la valeur renvoyée correspond à ce mot clé.
Si le mot clé correspond, on ferme la fenêtre ou pas, selon...
Bon Dév.
Cdlt - Eric.
--
Eric DELATTRE
http://www.yoosite.fr je ne penses pas pouvoir m'en sortir comme ça, car je ne déclenche pas la fermeture de l'écran, j'enchaine juste avec un suivant. j'ai vraiment un enchainement de fenêtre défini dans une fonction (avec tout un algo) et donc quand je clic sur suivant, je fais un ouvrefenetremobile mais cela conserve la fenetre précédente en dessous. Et cela me pose un réel pb. je ne lance aucune fermeture d'écran et si j'essai de la forcer (dans l'init de la nouvelle fenetre), l'appli obtient un écran noire, j'ai l'impression que le pgrm ne sais plus à quelle écran/champs se rattacher
Membre enregistré 637 messages
Posté le 24 août 2016 - 14:32
Autrement dit, si une fenêtre est ouverte, tu peux potentiellement la réouvrir une seconde fois ? Cela ne te pose t'il pas aussi des problèmes de contextes ? Peut-être veux-tu reproduire une espaèce de sytèmes de fenêtres "modales" ? Si oui et sans vouloir mettre en cause ton code, je ne pense pas que ce soit la bonne méthode... Sinon, une autre solution pourrait être l'utilisation de plans et ton algo spécifique gèrerait de plans plutôt que des fenêtres... Cdlt - Eric. -- Eric DELATTREhttp://www.yoosite.fr
Membre enregistré 33 messages
Posté le 24 août 2016 - 15:06
Eric67 a écrit : Autrement dit, si une fenêtre est ouverte, tu peux potentiellement la réouvrir une seconde fois ?
Cela ne te pose t'il pas aussi des problèmes de contextes ?
Peut-être veux-tu reproduire une espaèce de sytèmes de fenêtres "modales" ?
Si oui et sans vouloir mettre en cause ton code, je ne pense pas que ce soit la bonne méthode...
Sinon, une autre solution pourrait être l'utilisation de plans et ton algo spécifique gèrerait de plans plutôt que des fenêtres...
Cdlt - Eric.
--
Eric DELATTRE
http://www.yoosite.fr le truc c'est que j'ai 85 fenêtre dans cette appli qui s'enchaine de manière différente suivant les réponses données. on a quasiment à chaque fenêtre un bouton "suivant" et un bouton "retour" que l'on gère par algo. Par contre il y a le fait que ouvrefenetremobile conserve les fenêtres précédemment ouvertes et donc 2 pbs : - un empilement des fenêtre et j'ai l'impression que ça fait bugger le smartphone (plantage aléatoire --> quid de la gestion mémoire) - et cet empilement qui se retrouve avec le bouton "physique retour" (<--) d'un windows phone et qui lui ré-affiche la fenêtre précédente active et donc se fou complètement de mon algo. je ne sais plus quoi faire merci en tout cas pour la recherche
Membre enregistré 637 messages
Posté le 24 août 2016 - 16:11
La seule chose que tu puisses faire, c'est de remettre en cause ton algo et revisiter les choses avec un ouvrefille puis de gérer chaque fermeture dans le "code de fermeture d'une fenêtre fille" de ta fenêtre principale. C'est plus simple qu'il n'y parait et tes enchainements deviendront très clair. Cdlt - Eric. -- Eric DELATTREhttp://www.yoosite.fr
Posté le 24 août 2016 - 21:58
Bonjour pour gérer ce genre de chose exactement comme tu veux, tu peux : 1. créer une fenêtre de lancement invisible (ou hors écran) 2. créer une procédure globale ouvrefille (qui va donc être lancée à la place de ouvrefille standard) ou bien sur une procédure appelée utilise, si c'est ce que tu as dans ton code 3. dans le code de cette procédure, tu place les informations d'ouverture (nom de fenêtre valeur de paramètre) dans un tableau global au projet 4. Dans ta fenêtre initiale, tu as un timer qui scrute le tableau. Dés qu'il y a quelque chose de nouveau à ouvrir: - tu fais le wl.ouvrefille avec les infos du tableau - tu fais le ferme de la ou des autres fenêtres qui sont listés dans le tableau, et tu nettoie celui ci Et hop, tu as ton utilise maison Cordialement -- Fabrice Harari Consultant WinDev, WebDev et WinDev Mobile International A votre disposition : WXShowroom.com, WXReplication (open source) et maintenant WXEDM (open source) Plus d'information sur http://fabriceharari.com Le 8/24/2016 à 8:11 AM, Eric67 a écrit :La seule chose que tu puisses faire, c'est de remettre en cause ton algo
et revisiter les choses avec un ouvrefille puis de gérer chaque
fermeture dans le "code de fermeture d'une fenêtre fille" de ta fenêtre
principale. C'est plus simple qu'il n'y parait et tes enchainements
deviendront très clair.
Cdlt - Eric.
--
Eric DELATTRE
http://www.yoosite.fr
Membre enregistré 19 messages
Posté le 13 septembre 2016 - 15:28
Bonjour, je rencontre plus ou moins le même dilemme, mais cette fois entre Utilise() et OuvreFille(). J'utilise pour le moment la fonction OuvreFenêtreMobile dans une application Android qui consiste en une suite de fenêtres (tout le temps le meme enchainement) avec un bouton Précédent et un bouton Suivant. Selon les fenêtres, au clic sur le bouton Suivant, un thread se lance et envoie des informations (récoltées dans la fenêtre) par SMS, et la fenêtre suivante se lance en même temps. Sachant que j'ai coché "Mémoriser la valeur" pour tous les champs des fenêtres, vais-je les retrouver si j'utilise la fonction Utilise() ou OuvreFille()? La prochaine étape dans le dev de mon projet étant de créer une zone répétée et de pouvoir ainsi modifier la fenêtre 24 sans devoir passer par les 23 premières, cela fonctionnera-t-il quand même? Merci pour vos réponses.
Posté le 20 septembre 2016 - 11:35
Bonjour J'interviens sur ce post car je rencontre un problème un peu similaire avec une variante importante, cela fonctionne en simulateur, mais pas sur ANDROID. Je gère un système d'enquêtes terrain sur téléphone, avec entre 100 et 150 questions. Chaque question est appelée dans une fenêtre, suivant trois types de fenêtres internes (Réponse ditecte en texte, réponse directe en entier, ou réponse en entier mais indirecte sur choix dans une combo). Pour gérer tout cela je crée un scenario d'enquête qui est installé dans une zone répétée et en parallèle dans un tableau de chaines. Ma fenetre d'enquête est composée de deux plans, un plan de questionnement avec un champ fenetre interne et un plan de suivi avec ma zone répétée contenant mon scenario et toutes mes questions. Le sélection d'une question dans la zone répétée affiche automatiquement la question (et sa réponse éventuelle) dans mon plan 1, dans ma fenêtre interne choisie suivant le type de question. TOUT MARCHE IMPECABLE dans la simulateur ! Mais sous ANDROID, j'ai bien mon scenario, ma zone répétée est là, complète, mais rien ne s'affiche dans ma fenêtre interne de questionnement !!! Pourtant tout est là, car sur divers tests je constate que mes données de la combo sont là, mais la combo est invisible et les questions sont invisibles !!! Je n'y comprends plus rien !!! Si vous avez des idées, ce serait génial !!! Merci d'avance !
Posté le 02 avril 2025 - 12:18
Ce post date mais j'ai été confronté à la même question aujourd'hui, et comme il n'y a pas de réponse claire sur ce fil je donne une solution très simple pour fermer la fenêtre précédente à l'ouverture d'une nouvelle fenêtre: sFenetreEnCours est une chaîne = FenEnCours() OuvreFenêtreMobile(FEN_Fenetre_a_ouvrir) Ferme(sFenetreEnCours) OuvreFenetreMobile n'est pas bloquante (comme OuvreFille), donc après l'ouverture de la fenêtre à ouvrir, on peut fermer la précédente. Florian