Page 1 sur 1

probleme de Device Context (DC )

Publié : sam. 22/févr./2014 21:49
par Backup
avant on pouvait faire :

Code : Tout sélectionner

*dc=startdrawing(spriteoutput(#dessin))
pour recuperer de DC (Device context ) du Sprite

il semble qu'on puisse encore faire (puisque ça marche )

Code : Tout sélectionner

*dc=startdrawing(Screenoutput(#dessin))
ou bien

Code : Tout sélectionner

*dc=startdrawing(imageoutput(#dessin))
ect....
seul les Sprites semblent touchés par l'amnésie, depuis les version apres 4.60 ...
en tout cas en V 5.21 ça ne marche pas !
le nombre renvoyé n'est pas digéré par les Api windows ....(d'ailleurs a quoi correspond ce nombre ?? mystere )

connaissez vous un moyen autre pour récuperer un DC ??

sinon , c'est la mouise , j'ai quelques Codes qui utilise cette facilité
et je ne vois vraiment pas comment , les remplacer ...
lorsque je tombe sur des choses comme ça , je me demande si Purebasic évolue dans le bon sens .... :mrgreen:

Re: probleme de Device Context (DC )

Publié : sam. 22/févr./2014 23:52
par Fred
Les libs évoluent et quand tu utilises des fonctions non documentées, tu t'exposes à ce genre de soucis. On essaie au maximum de ne pas trop changer les valeurs de retour "cachées" mais dans ce cas, ce n'etait pas possible. Tu peux utiliser une image intermediaire pour utiliser l'API et l'afficher sur ton sprite avec DrawImage(). Ou mieux quand on veut utiliser l'API c'est de tout creer avec les appels API (CreateDIBSection_() etc.), c'est le seul moyen d'avoir un code pérenne dans le temps.

Re: probleme de Device Context (DC )

Publié : dim. 23/févr./2014 1:08
par Backup
quoiqu'il en soit , merci pour la réponse en Français
je ferai donc sans ... :)
j'avais vu qu'en utilisant une image copie , on pouvais sans sortir .. (mais ajoute une etape supplémentaire )

Merci :)