dragonno
Nombre de messages : 341 Localisation : Près de Toulouse Date d'inscription : 22/01/2009
| Sujet: print_target_is pas copain avec container :/ Mar 14 Déc 2010 - 0:47 | |
| Print_target_is ne fonctionne pas sur le container, et sur la doc logicielle cet objet n'est pas dans la liste des objets touchés par print_target_is.
Comment vous arrivez à écrire avec print sur le container ?
| |
|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: print_target_is pas copain avec container :/ Mar 14 Déc 2010 - 1:14 | |
| A mon avis, ça n'a pas de sens d'écrire sur un CONTAINER avec la commande PRINT. Il faut placer un objet ALPHA sur ce CONTAINER et modifier la caption de ce alpha. Pourquoi? même sur une form, la form 0 par exemple, ça n'a guère de sens. Print ne devrait servir qu'à des affichages provisoires en mise au point, et encore: il vaut mieux créer un memo et faire add_item dans ce memo que de faire un print. La preuve: essaie ce petit programme, et tu verras que tu ne verras jamais tes print: - Code:
-
' je fais mes affichages: print "ligne 1" print "ligne 2" print "ligne 3" ' je crée un objet: picture 1 top 1,10 left 1,200 ' et maintenant, où sont les print ? end
Mais si je fais ainsi: - Code:
-
' je crée un objet: picture 1 top 1,10 left 1,200 ' je fais mes affichages: print "ligne 1" print "ligne 2" print "ligne 3" ' et maintenant, où sont les print ? end mes print sont là ! Pourquoi ? Parceque le résultat d'un print ne crée pas d'objet PAnoramic, et donc pas d'objet Windows. Il est simplement déposé, pixel par pixel, dans le canvas de la form, ou plus généralement de l'objet désigné par print_target_is. Et le canvas est une sorte de brouillon dont l'état est modifié en permanence. Dans le premier exemple, insère une commande message juste avant le commentaire "je crée un objet". Surprise: les print sont là ! C'est la commande picture qui les efface, car par défaut, le picture est créé dans le coin en haut à gauche effaçant ainsi le canvas à cet endroit. Le fait de le déplacer après ne change rien: le canvas initial n'existe plus. L'effet est encore plus spectaculaire si tu fais des print de lignes plus longues et de plus de lignes, tu verras exactement le rectangle effacé à la position initiale du picture. Maintenant, pour un CONTAINER, le problème est encore plus complexe car il s'agit d'une collection d'objets qui lui sont associés, mais pas d'une surface de dessin. Mais le problème de persistance des print sur une form est encore plus grave que ce que je montrais plus haut. Essaie de faire plusieurs print dans la form 0, puis tu appelles le bloc-notes pour recouvrir cette form, peut-être partiellement. Puis, tu fermes le boc-notes. Et où sont les print ? Partis... Car le canvas n'est pas persistant ! Un bon conseil insistant: utilise un memo un une list pour des affichages avec des item_add, mais jamais de print pour un usage réel ! Et en debugging, cela est utile aussi car il y a alors un défilement automatique ce qui n'est pas le cas des print qui ne sont plus visibles lorsque la position actuelle de print dépasse le bas de la form... ET en mode normal, si tu n'as plus besoin des affichages de debugging, nul besoin de mettre tous les print en commentaire ou de les supprimer - il suffit de faire HIDE du memo, et voilà ! | |
|
Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: print_target_is pas copain avec container :/ Mar 14 Déc 2010 - 8:41 | |
| Klaus a parfaitement raison la commande print est a éviter, mais pour répondre plus simplement à ta question Dragono et compléter la réponse de Klaus, il ne faut pas oublier PARENT et CAPTION - Code:
-
container 1:top 1,100:left 1,100:caption 1," groupe d'objets 1 " alpha 2:parent 2,1:top 2,30:left 2,10:caption 2,"alpha 2":font_color 2,0,0,255
A+ | |
|
dragonno
Nombre de messages : 341 Localisation : Près de Toulouse Date d'inscription : 22/01/2009
| Sujet: Re: print_target_is pas copain avec container :/ Mar 14 Déc 2010 - 14:12 | |
| - Citation :
- Mais le problème de persistance des print sur une form est encore plus grave que ce que je montrais plus haut. Essaie de faire plusieurs print dans la form 0, puis tu appelles le bloc-notes pour recouvrir cette form, peut-être partiellement. Puis, tu fermes le boc-notes. Et où sont les print ? Partis... Car le canvas n'est pas persistant !
Ah bein merci, rien que ça, ça me donne pas envie d'utiliser le print. Bon bein je vais utiliser le mémo, de toutes façons cela m'arrange pour une autre raison, donc merci de l'info Maître klaus | |
|
Contenu sponsorisé
| Sujet: Re: print_target_is pas copain avec container :/ | |
| |
|