PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → Gestion des plans inutilisables
Gestion des plans inutilisables
Débuté par Baptiste, 29 mai 2019 08:15 - 6 réponses
Posté le 29 mai 2019 - 08:15
Bonjour,

Je rencontre de gros soucis avec la gestion des plans en Windev mobile sur IOS (en mode réel)

En effet mes plans sont plus haut que la hauteur réel de la fenêtre

Si l'utilisateur scroll en bas d'un plan et qu'il clique sur le bouton pour changer de plan, ce nouveau plan ne se positionne pas à la position Y=0
Du coup l'utilisateur se retrouve en bas du nouveau plan ce qui est incohérent
De plus il n'y a aucune possibilité pour remonter en haut du plan par programmation (j'ai testé setfocus ...) rien ne fonctionne

2eme bug important : Si je suis en bas d'un plan et que je sélectionne un élément dans une combo, le plan remonte tout seul à la position Y=0. Du coup l'utilisateur est complètement perdu

Je suis un peu surpris qu'en version 24,, de tel bug rendant l'application inutilisable soit présent

PC Soft a validé c'est 2 bugs, mais je suis toujours en attente d'une solution

Avez-vous des solutions SVP ?
Membre enregistré
120 messages
Popularité : +13 (15 votes)
Posté le 29 mai 2019 - 10:49
Bonjour,
J'ai déjà rencontré ce soucis également. C'est un problème de prise de focus. Un champ A prend le focus, il est en position y=0, du coup la fenêtre glisse automatiquement à cette position.

Nous avons contourné ce problème en utilisant des champs interrupteurs cachés (hors champ ou invisible). Nous donnons le focus à l'interrupteur qui est à la position qui nous intéresse, et la fenêtre glisse à cette position.
Nous en positionnons à différentes hauteurs, c'est finalement le même usage qu'une ancre en web

Bonne journée,
Posté le 29 mai 2019 - 11:57
Je viens de tester votre réponse sur la dernière version IOS
Malheureusement, elle ne fonctionne pas
j'ai mis un setfocus(MonChampInterrupteur), mais le plan ne se positionne pas au niveau de l'interrupteur
Membre enregistré
120 messages
Popularité : +13 (15 votes)
Posté le 29 mai 2019 - 13:13
oups, je n'avais pas vu que c'était sur ios.
Nous utilisons cette astuce sous android uniquement.
Pas d'expérience pour l'instant sous ios.
Désolé.
Posté le 29 mai 2019 - 21:58
Merci
C'est un gros problème, car mes formulaires font plusieurs hauteurs de pages et du coup mon application est totalement inutilisable. Je ne comprends pas qu'un bug aussi important soit présent en 24
Membre enregistré
4 messages
Popularité : +2 (2 votes)
Posté le 26 juin 2019 - 17:51
Bonjour Baptiste,
j'ai le même problème que vous sur mon appli iOS.
C'est une application avec une fenêtre contenant plusieurs onglets et chaque onglet contient un formulaire assez long.
Lors de la validation de champ combo ou de champ de saisie, le page scroll automatiquement en y=0 ce qui rend mon appli iOS complètement inutilisable.
J'ai fait des tests avec des fenêtre internes et des fenêtres classiques, rien à faire.
En debuggant sur un iphone 6S avec WMDev, je me suis rendu compte que le scroll se fait avant même la sortie du champ. Je pense que le problème vient vraiment du noyau de WinDev Mobile.
J'ai donc essayer de en sortie de champ donc après le scroll d'utiliser la fonction DonneFocus sur le nom de mon champ pour me déplacer dans mon formulaire mais ça ne fonctionne pas non plus. Le code retour de la fonction me renvoie -1.
J'ai créé 2 tickets pour les dev PCSoft et j'ai appelé plusieurs fois le Support Technique Gratuit pour avoir une réponse ou au moins un délai.
Pour l'instant, j'attends toujours mais j'ai un impératif de livraison pour un client ce qui va peut être me pousser à abandonner Windev Mobile pour iOS.

Si vous avez trouvez une solution pour contourner ce problème, je suis plus que preneur.

Cordialement.

Info plateforme :
Windev Mobile 24
iOS 12.3.1
Membre enregistré
4 messages
Popularité : +2 (2 votes)
Posté le 08 juillet 2019 - 18:26
Bonjour,
voici la solution de contournement en attendant la correction.

Pour le problème de scroll auto :

-> rajouter une variable gnPos dans le code de déclaration de fenêtre
gnPos est un entier
-> Rajouter le code suivant dans le p-code d'entrée de la combo
gnPos = AscenseurPosition ( FEN_ SansNom1 , ascVert )

-> Rajouter le code suivant dans le p-code de sortie de la combo
AscenseurPosition ( FEN_ SansNom1 , ascVert , gnPos )


Pour le changement de plan, pour remonter à la position y=0 :

Rajouter le code suivant au moment du changement de plan
AscenseurPosition ( FEN_ SansNom1 , ascVert , 0 )

J'ai testé, ça fonctionne donc pour l'instant je vais me servir de ça.

Bon dev.