Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[WD9] [WD10] changer dynamiquement de gabarit

5 réponses
Avatar
Emmanuel Haefele
Bonjour,

Suite à mon problème d'affichage en TSE évoqué précédement, je me dis que
la solution serait de mettre en place un système qui permettrait de
changer dynamiquement le gabarit de mon application en fonction de
l'environnement réseau dans lequel je me trouve.

Donc pour ça j'ai essayé il y a maintenant quelques temps la fonction
ChangeGabarit mais le problème c'est que je n'ai jamais réussi à la mettre
en oeuvre.

J'ai tout tenté (il me semble) au niveau de l'initialisation de mon
projet, mais rien, ça n'a jamais voulu fonctionner. La seule solution que
j'ai trouvé c'est de changer le gabarit au niveau de la description du
projet et de recréer l'exécutable.

Alors en fait j'aimerais savoir si quelqu'un est déjà parvenu à utiliser
cette fonction, d'une part en WD9 et d'autre part en WD10 ?


Amicalement,

Emmanuel Haefelé.

5 réponses

Avatar
Daniel
"Emmanuel Haefele" writes:

Bonjour,

Suite à mon problème d'affichage en TSE évoqué précédement, j e me dis que
la solution serait de mettre en place un système qui permettrait de
changer dynamiquement le gabarit de mon application en fonction de
l'environnement réseau dans lequel je me trouve.

Donc pour ça j'ai essayé il y a maintenant quelques temps la fonction
ChangeGabarit mais le problème c'est que je n'ai jamais réussi à la mettre
en oeuvre.

J'ai tout tenté (il me semble) au niveau de l'initialisation de mon
projet, mais rien, ça n'a jamais voulu fonctionner. La seule solution q ue
j'ai trouvé c'est de changer le gabarit au niveau de la description du
projet et de recréer l'exécutable.

Alors en fait j'aimerais savoir si quelqu'un est déjà parvenu à uti liser
cette fonction, d'une part en WD9 et d'autre part en WD10 ?



Oui en WD7.5, il faut bien que le fichier wdy du gabarit soit
accessible.

Mais changer de gabarit va te changer les boutons, certaines polices,
alignement etc... et je pense qu'il va falloir que tu envisages de
faire tes gabarits.

Sous TSE il faut particulièrement faire attention aux écrans de ton
application, car c'est unqiemnt l'image qui est transmise, et certains
cas vont t'augmenter ta bande passante et la charge du serveur.

Su tu veux faire le test tu dessines une fenêtre avec un fond d'écran
avec une répétition de lignes ou de points et ensuite tu fais défiler
la fenêtre. Tu regardes la charge processeur, et le débit de ton
réseau, et là tu vois ce qu'il ne faut pas faire en TSE.


Amicalement,

Emmanuel Haefelé.




--
suivre ce lien pour répondre:
http://cerbermail.com/?2KrV3YZXnn
Daniel
;-)
Avatar
Francis MOREL
ReBonsoir Emmanuel,

Alors en fait j'aimerais savoir si quelqu'un est déjà parvenu à uti liser
cette fonction, d'une part en WD9 et d'autre part en WD10 ?



Ton problème m'interressait, alors j'ai testé sur un petit projet en
WD10 pour lequel j'étais certain de la validité des styles et du
gabarit utilsié.
J'ai donc mis la commande

ChangeGabarit("","C:WinDev
10PersonnelGabaritsEmeraudeemeraude.wdy")

en tête de mon projet, recré l'exe et lancé et miracle ça marche
nickel.

Je constate juste les mêmes imperfections que le changement de gabarit
dans l'éditeur, mais là ça me semble normal.

A part cela comme je te disais au début, j'avais particulièrement
soigné les styles de ce projet (du fait que j'utilisais le changement
de gabarit de l'éditeur et voulais éviter les problèmes).
Sinon, rien de spécial.

J'ai aussi testé sur un autre projet moins propre (tous les styles
sont dissociés) et ça marche aussi dans les mêmes conditions

Si je peux tester ou regarder d'autres chose dis le moi.

Bon WE.

Amitiés.

A+
--
Francis MOREL
Avatar
Emmanuel Haefele
"Francis MOREL" a écrit:

Bonjour Francis,

J'ai donc mis la commande
ChangeGabarit("","C:WinDev
10PersonnelGabaritsEmeraudeemeraude.wdy")



en tête de mon projet, recré l'exe et lancé et miracle ça marche
nickel.



Vendredi soir j'ai rapidement enlevé à l'init de mon projet une ligne en
commentaire (identique à la tienne), intégré le style à mon wdu et chez
moi aussi miracle !!!, ça a marché nickel avec l'exécutable ;-)

Mes tests datant de plusieurs mois, je ne vais pas pollémiquer et vais
approfondir tout ceci dès lundi.

A part cela comme je te disais au début, j'avais particulièrement
soigné les styles de ce projet (du fait que j'utilisais le changement
de gabarit de l'éditeur et voulais éviter les problèmes).



Ca doit être effectivement un impératif pour arriver à quelque chose de
viable et c'est ce que je vais faire également.

En tout les cas merci à tous ..


Amicalement,

Emmanuel Haefelé.
Avatar
Emmanuel Haefele
"Francis MOREL" a écrit :

Bonjour Francis,

Si je peux tester ou regarder d'autres chose dis le moi.



Tu me le proposes si gentillement ;-)

Ce matin j'ai trouvé un moment pour me pencher sur ce problème mais je
butte sur un truc.

Rappel de ma problèmatique: Mon projet utilise le gabarit A et je
souhaiterais changer dynamiquement ce dernier par le gabarit B. Pour y
parvenir j'exécute à l'init de mon projet la commande ChangeGabarit.

Dans un premier temps j'ai simplement dupliqué mon gabarit A que j'ai
renommé en gabarit B. Dans mon projet j'avais quelques libellés hors
gabarit, donc ce que j'ai fait pour tester, c'est édité mes deux gabarits
et créé un libellé particulier à l'identique dans les deux avec le même
nom "Libellé3" mais des couleurs différentes (rouge et orange). Ensuite
j'ai supprimé dans ma fenêtre le libellé d'origine que j'ai remplacé par
le nouveau qui est correctement associé à mon gabarit. Jusqu'ici pas de
problème puisque qu'après quelques manips et sans exécuter la fonction
changegabarit il m'a bien pris mon libellé (rouge) à l'exécution.

La où ça se corse c'est lorsque je charge dynamiquement mon gabarit B.
Effectivement le gabarit est modifié dans sa présentation générale mais
par contre mon libellé reste obstinément en noir (gras) au lieu de
l'orange attendu. Donc pour essayer de comprendre j'ai modifié au niveau
du projet mon gabarit par défaut et je l'ai remplacé par mon gabarit B. Je
lance la procédure de réactualisation du gabarit au niveau projet,
j'exécute le projet avec le gabarit par défaut et là miracle mon libellé
est bien orange. Ensuite ( et sur cette base là), je charge dynamiquement
mon gabarit A et là zut mon libellé est à nouveau noir et au lieu du rouge
attendu :-(

Conclusion j'ai l'impression que si on apporte une modification à un
gabarit celle-ci n'est pas prise en compte lorsqu'on utilise cette
fonction changegabarit, penses-tu que je me trompe ?

En tout les cas si tu as une idée, je suis assez preneur.

par avance merci.


Amicalement,

Emmanuel Haefelé.
Avatar
Francis MOREL
Bonjour Emmanuel,

La où ça se corse c'est lorsque je charge dynamiquement mon gabarit B.
Effectivement le gabarit est modifié dans sa présentation général e mais
par contre mon libellé reste obstinément en noir (gras) au lieu de
l'orange attendu. Donc pour essayer de comprendre j'ai modifié au niveau
du projet mon gabarit par défaut et je l'ai remplacé par mon gabarit B. Je
lance la procédure de réactualisation du gabarit au niveau projet,
j'exécute le projet avec le gabarit par défaut et là miracle mon li bellé
est bien orange. Ensuite ( et sur cette base là), je charge dynamiqueme nt
mon gabarit A et là zut mon libellé est à nouveau noir et au lieu d u rouge
attendu :-(



Effectivement c'est plus compliqué qu'il n'y paraissait au premier
abord.
J'ai bien le même problème les couleurs et style ne changent pas
comme espéré.
J'avoue en regardant plus en détail ne plus vraiment comprendre la
logique.
En prenant 2 gabarits (similaires ou d'origine différente), je ne sais
plus comment la modification va se propager lors du changement
dynamique de gabarit.

Jarrive bien à modifier la couleur d'un libellé, mais en changeant le
premier style du gabarit au lieu du 9ième de même nom et
caractéristiques que l'original.

En dissociant les styles originaux le résultat reste identique... !!


Conclusion j'ai l'impression que si on apporte une modification à un
gabarit celle-ci n'est pas prise en compte lorsqu'on utilise cette
fonction changegabarit, penses-tu que je me trompe ?



En fait les modifs semblent biens prise en compte mais avec quelle
logique mystère.

En tout les cas si tu as une idée, je suis assez preneur.



Pour l'instant encore mois qu'avant de tester, je regarde un peu plus,
si la lumière vient je te dis.

A+

--
Francis MOREL