Page 1 sur 1

Event procedure

Publié : lun. 18/juil./2022 16:17
par jph
Bonjour,

lorsque je clique sur le menu, dans le Form designer, qui me permet de mettre une Event procedure, j'ai la liste de toutes les procédures du programme en double. J'ai deux Forms dans ce programme que je commence à peine et j'ai la liste des procédures en double. Voici une image qui montre le problème.

https://drive.google.com/file/d/1ZljEF4 ... sp=sharing

Je ne pense pas que ce soit un bug car c'est la même chose sous windows et linux.

Merci d'avance.

Re: Event procedure

Publié : mar. 19/juil./2022 8:15
par Ar-S
Salut,
Je ne vois pas de procédures en double sur ton image ? :?

Re: Event procedure

Publié : mar. 19/juil./2022 8:29
par SPH
Il parle de la liste de droite (sur fond blanc) : 4 items qui se répètent.

Re: Event procedure

Publié : mar. 19/juil./2022 8:54
par Ar-S
Houla j'ai pas les yeux en face des troues.. Effectivement.
Je vais laisser les utilisateurs du Form designer répondre. Ce n'est pas mon cas.

Re: Event procedure

Publié : mar. 19/juil./2022 9:04
par Marc56
Présent. :lol:

Le Form Designer capte toutes le procédure de tous les fichiers ouverts dans l'IDE et les garde même si on ferme des fichier, donc il fait des doubles etc.

Pour utiliser efficacement le FD:
- Travailler avec le gestionnaire de projets
- Nommer tous les fichiers
- Ne laisser ouvert dans l'IDE que les fichiers concernés
- Ne pas utiliser la menu déroulant de choix de procédure, mais créer les procédures dans le code principal (ou dans un pbi)
- un gadget peut avoir plusieurs procédures, ce menu ne sert que pour une seule action (clic droit), donc n'est pas très utile.

:wink:

Re: Event procedure

Publié : mar. 19/juil./2022 10:50
par jph
D'accord. Je vais le faire manuellement. Mais c'est dommage qu'on ne puisse pas le faire automatiquement...

Est-ce que quelque part dans la doc il est mentionné le code que l'on peut entrer sans qu'il soit effacé par la génération automatique du code. J'ai un panel avec 3 tabs et pour faire apparaître les deux dernières tabs, j'ai été obligé des les entrer à la main dans le fichier Form. Le code ainsi entré ne s'efface pas lors de la régénération automatique. Par contre j'avais entré du code (une procédure et des variables globales) et il a été effacé... Quel est le code que je peux entrer et qui ne sera pas effacé?

Merci pour vos réponses.

Re: Event procedure

Publié : mar. 19/juil./2022 10:52
par falsam
Codes toi même tes fenêtres. Je file me cacher avant que Marc me tombe dessus :mrgreen:

Re: Event procedure

Publié : mar. 19/juil./2022 11:45
par Marc56
@falsam :mrgreen:

@jph
Il faut comprendre comment fonctionne le FD
- Quand on bascule entre le mode graphique et le mode code il écrit toutes les valeurs des champs dans un code.
- Quand on bascule dans l’autre sens, il remplit les champs avec les valeurs.
Il n’y a pas d’IA, ce serait bien trop compliqué à coder, le système doit donc lire des valeurs attendues dans le même ordre.
La lecture et écriture, c’est comme pour un fichier JSON, on lit tout et écrit tout en une seule fois.
Le fichier est donc effacé à chaque bascule et tout ce qui est ajouté est donc supprimé.
Les seules choses qu’on peut modifier directement dans le code, ce sont les valeurs numériques et le contenu des chaînés de caractères.

PS. L’étape 2 des nouveaux utilisateurs, c’est de dire le FD est nul, je vais réécrire le mien, c’est fastoche, mais attention, en informatique, ce qui parait simple est souvent très compliqué et inversement.

Re: Event procedure

Publié : mar. 19/juil./2022 12:03
par jph
Marc56 a écrit : mar. 19/juil./2022 11:45
Les seules choses qu’on peut modifier directement dans le code, ce sont les valeurs numériques et le contenu des chaînés de caractères.
D'accord. Pourtant j'ai rajouté des tabs à mon panel manuellement. Et c'est la seule façon de procéder. Ça ne s'est pas effacé.
Marc56 a écrit : mar. 19/juil./2022 11:45 PS. L’étape 2 des nouveaux utilisateurs, c’est de dire le FD est nul, je vais réécrire le mien, c’est fastoche, mais attention, en informatique, ce qui parait simple est souvent très compliqué et inversement.
Rassure-toi, je n'ai pas l'intention ni le niveau de refaire un FD moi-même. Mais, même si on peut construire ses interfaces à la main, l'utilisation du FD est beaucoup plus reposante bien qu'apparemment limitée...

Re: Event procedure

Publié : mar. 19/juil./2022 12:12
par Ollivier
falsam a écrit :Codes toi même tes fenêtres. Je file me cacher avant que Marc me tombe dessus
Il est là ! Je t'attrape, avant que tu ne te caches : il n'y a pas de 's' à l'impératif (verbe du 1er groupe, singulier, 2ème personne), et tu as fait une faute à "code". Un comble pour un codeur. :mrgreen:

Re: Event procedure

Publié : mar. 19/juil./2022 12:14
par Marc56
jph a écrit : mar. 19/juil./2022 12:03 [...]j'ai rajouté des tabs à mon panel manuellement. Et c'est la seule façon de procéder. Ça ne s'est pas effacé.
Clic droit sur le Panel, puis sélectionne Éditer les éléments
(De même pour la plupart des gadgets qui en contiennent d'autres)

Le FD est aussi très utile pour les images à inclure dans le code: Une fois une image sélectionnée pour un gadget ou une icône de menu, aller dans Form > Manager d'image, et cocher CatchImage et ce dernier va créer tout seul le code pénible (DataSection, IncludeBinary, CatchImage etc)
:wink:

Re: Event procedure

Publié : mar. 19/juil./2022 12:21
par jph
Marc56 a écrit : mar. 19/juil./2022 12:14
Clic droit sur le Panel, puis sélectionne Éditer les éléments
(De même pour la plupart des gadgets qui en contiennent d'autres)
Super astuce. Je ne connaissais pas et je me disais que c'était bizarre qu'on ne puisse pas le faire. Merci de l'info.