| Bug en suppression d'une form | |
|
|
Auteur | Message |
---|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Bug en suppression d'une form Dim 16 Mai 2010 - 17:22 | |
| Je crois avoir détecté un bug. Si je souhaite supprimer une form que j'ai créée dynamiquement, il y a une violation d'accès. Voici le code pour le mettre en évidence: - Code:
-
label click_5, click_100
button 5 top 5,10 left 5,10 caption 5,"Démarrer" on_click 5,click_5
end
click_5: form 10 command_target_is 10
button 100 top 100,10 left 100,10 caption 100,"Sortie" on_click 100,click_100 return
click_100: hide 10 command_target_is 0 delete 100 delete 10 return
Cliquer sur "Démarrer", puis "Sortrie", et Bouuuuuuuuuuuuuuum... | |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Bug en suppression d'une form Dim 16 Mai 2010 - 18:05 | |
| si tu mets une apostrophe devant DELETE à la ligne 26 OU à la ligne 27, il y a le problème.
si tu mets une apostrophe devant DELETE à la ligne 26 ET à la ligne 27, il n'y a plus le problème.
Donc le programme ne supporte aucun DELETE au LABEL click_100. Le problème n'est pas lié au fait de supprimer un FORM, puisque c'est pareil pour BUTTON 100.
Il semble que c'est bien un BUG.
A+ | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: +++ Dim 16 Mai 2010 - 18:17 | |
| C'est marrant, ça ne le fait que la première fois, si on continue à cliquer, cela ne le fait plus. Un bug, pas si sûr... | |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Bug en suppression d'une form Dim 16 Mai 2010 - 18:22 | |
| Bien vu JJN4, mais pourquoi cet "accès violation" au premier tour ??? | |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Bug en suppression d'une form Dim 16 Mai 2010 - 18:38 | |
| Je ne sais pas si cela peut te satisfaire Klaus, mais j'ai contourné en faisant HIDE pour FORM et BUTTON et supprimé les DELETE. - Code:
-
label click_5, click_100
button 5 top 5,10 left 5,10 caption 5,"Démarrer" on_click 5,click_5
form 10 :hide 10: top 10,100:left 10,100 button 100 :hide 100
end
click_5: show 10 command_target_is 10
show 100 top 100,10 left 100,10 caption 100,"Sortie" on_click 100,click_100 return
click_100: command_target_is 0 hide 10:hide 100 return
| |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Bug en suppression d'une form Dim 16 Mai 2010 - 23:15 | |
| Effectivement, l'erreur "access violation" n'est pas bloquante, et ne se reproduit pas si on continue. C'est d'autant plus curieux. Tu as bien vu pour le contournement du problème; si tu regardes bien, c'est cette solution que j'ai utilisé dans ma première esquisse d'un IDE tout en Panoramic présenté ici: https://panoramic.1fr1.net/vos-sources-vos-utilitaires-a-partager-f2/ide-panoramic-ecrit-en-panoramic-t828.htmC'est le cas de la petite fenêtre qui s'ouvre lorsqu'on clique sur le "0" à côté de "id" dans la fenêtre des propriétés. Seulement, cela ne me satisfait pas. J'ai plein de petites fenêtres auxiliaires à ouvrir, avec des dessins différents, et je ne veux pas les garder toutes en mémoire simultanément, d'autant plus que dans une session de travail, on ne les utilisera probablement pas toutes. D'où mon idée de les créer et supprimer dynamiquement, ce qui devrait être possible avec Panoramic. Et le message d'erreur fait désordre, et je ne mesure pas les conséquences sur le déroulement futur du programme. | |
|
| |
Invité Invité
| Sujet: Re: Bug en suppression d'une form Lun 17 Mai 2010 - 1:01 | |
| Il y a plus qu'un bug, une déviation du manuel - Citation :
- Si l'objet système est un FORM, tous les objets systèmes à l'intérieur sont supprimés aussi
Hors si le bouton n'est pas supprimé en même temps, lors de la nouvelle création, le message indique qu'il est déjà créé. |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Bug en suppression d'une form Lun 17 Mai 2010 - 13:45 | |
| Je ne comprend pas ce que tu veux dire Cosmos, bug ou mauvaise programmation....
De quel boutton parles-tu le 5 ou le 100....
J'ai pensé qu'il y avait un problème avec command_target_is , mais après plusieurs essais je ne suis pas parvenu à un résultat.
A+ | |
|
| |
Invité Invité
| Sujet: Re: Bug en suppression d'une form Lun 17 Mai 2010 - 14:19 | |
| D'après le manuel, lorsque tu supprimes un FORM, tu supprimes tout ce que cette forme contient, donc ici tu supprimes aussi le bouton en supprimant form 10. A partir de là, si le bouton 100 faisant partie de la forme est supprimée, le bouton n'existe plus.
Si alors tu refais la forme avec le bouton et que tu n'avais pas fait delete 100, Panoramic te dis que l'objet 100 existe déjà.
Donc quand tu fais "delete 10", le bouton est physiquement encore présent.
Pour moi il y a un bug ou une erreur dans le manuel. |
|
| |
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Bug en suppression d'une form Lun 17 Mai 2010 - 18:35 | |
| Oui, éffecivement le manuel dit bien (pour DELETE) que si l'objet supprimé est un FORM tout les objets système à l'intérieur sont supprimés. Je ne pense pas qu'il s'agisse d'une erreur dans le manuel, car dans le programme de Klaus, si on clicke plusieurs fois le programme fonctionne. | |
|
| |
Jack Admin
Nombre de messages : 2394 Date d'inscription : 28/05/2007
| Sujet: Re: Bug en suppression d'une form Lun 17 Mai 2010 - 21:08 | |
| Il y a 2 façons équivalentes de lier un objet à un form: - par PARENT - par COMMAND_TARGET_IS Par exemple pour lier le button n°6 au form n°2, on peut faire: - Code:
-
form 2 button 6 parent 6,2 ou - Code:
-
form 2 command_target_is 2 button 6 Dans les 2 cas, DELETE 2 va automatiquement détruire les objets liés (ici le button n°6) conformément à ce qui est écrit dans le manuel. Là où il y a un bug, c'est quand on veut recréer l'objet numéro 6. Car s'il est physiquement détruit, son numéro n'a pas été libéré. Je corrige ce bug pour la prochaine version. | |
|
| |
Invité Invité
| Sujet: Re: Bug en suppression d'une form Lun 17 Mai 2010 - 23:00 | |
| je retire mon intervention, le post n'avait pas été mis à jour, etle message de Jack je ne l'avais pas vu. |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Bug en suppression d'une form Lun 17 Mai 2010 - 23:13 | |
| Merci, Jack, pour l'info sur le numéro non libéré. J'utiliserai provisoirement la création de forms cachés pour les décacher et recacher selon les besoins, en attendant que ce détail soit réglé. | |
|
| |
Invité Invité
| Sujet: Re: Bug en suppression d'une form Mar 18 Mai 2010 - 23:37 | |
| En lisant la réponse de Jack, je savais qu'il répondait à moitié au code de Klaus. Je n'avais pas le temps pour vérifier, c'est même inquiétant pour moi. J'ai repris le code de Klaus, et effacer le problème que j'ai posé et pour lequel Jack a répondu. J'ai tout simplement supprimé le bouton 100 de FORM 10, et le on_click mis sur la forme, ce qui donne: - Code:
-
label click_5, click_100
button 5 : top 5,10 : left 5,10 : caption 5,"Démarrer" on_click 5,click_5
end ' -- click_5: form 10 : on_click 10,click_100 return ' -- click_100: hide 10 delete 10 return Vous verrez que le problème ne sera pas résolu pour autant. |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Bug en suppression d'une form Mer 19 Mai 2010 - 0:19 | |
| Oui, et c'est même plus bizare: si l'on insiste, en répétant le click sur démarrer puis click dans la fenêtre qui s'ouvre, on a des fois l'erreur, des fois pas, sans comprendre pourquoi... | |
|
| |
Contenu sponsorisé
| Sujet: Re: Bug en suppression d'une form | |
| |
|
| |
| Bug en suppression d'une form | |
|