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

[WD16] Equivalent windev du VB6 picturebox.image.handle

2 réponses
Avatar
Fredo
Bonjour à tous,

Quelqu'un connaitrait-il l'équivalent windev du code VB6
Pict1.image.handle ou Pict1 est un pictureBox (champ image VB6 je crois)

A priori cette instruction renvoi le pointeur vers le HBitmap du champs
et j'en aurais besoin pour une API.

Merci d'avance,

Fred

2 réponses

Avatar
Fredo
Le 22/12/2011 14:09, Fredo a écrit :
Bonjour à tous,

Quelqu'un connaitrait-il l'équivalent windev du code VB6
Pict1.image.handle ou Pict1 est un pictureBox (champ image VB6 je crois)

A priori cette instruction renvoi le pointeur vers le HBitmap du champs
et j'en aurais besoin pour une API.

Merci d'avance,

Fred




Je m'auto réponds dans un début de solution.

le picturebox.image.handle correspond bien au hBitmap pour le récupérer
en windev il faut le code suivant :

hdc est un entier = dDébutDessin(MonImage,dAvecOpacité)
hBitmap est un entier = API("GDI32", "GetCurrentObject", hdc, 7)

ou 7 correspond à OBJ_BMP (objet bitmap)

Seul problème pour moi, mon image source contenue dans le champ MonImage
est un png avec opacitée et je perd cette opacité dans le hbitmap obtenu ...

Si quelqu'un sait comment récupérer l'image avec opacité cela serait super

Merci d'avance.

Fred
Avatar
Fredo
Le 22/12/2011 16:19, Fredo a écrit :
Le 22/12/2011 14:09, Fredo a écrit :
Bonjour à tous,

Quelqu'un connaitrait-il l'équivalent windev du code VB6
Pict1.image.handle ou Pict1 est un pictureBox (champ image VB6 je crois)

A priori cette instruction renvoi le pointeur vers le HBitmap du champs
et j'en aurais besoin pour une API.

Merci d'avance,

Fred




Je m'auto réponds dans un début de solution.

le picturebox.image.handle correspond bien au hBitmap pour le récupérer
en windev il faut le code suivant :

hdc est un entier = dDébutDessin(MonImage,dAvecOpacité)
hBitmap est un entier = API("GDI32", "GetCurrentObject", hdc, 7)

ou 7 correspond à OBJ_BMP (objet bitmap)

Seul problème pour moi, mon image source contenue dans le champ MonImage
est un png avec opacitée et je perd cette opacité dans le hbitmap obtenu
...

Si quelqu'un sait comment récupérer l'image avec opacité cela serait super

Merci d'avance.

Fred




Bon,

Sans solution, j'ai quand même réussi à récupérer mon png avec opacité
en mémoire depuis un memo binaire (que j'intègre dans une WDL) et de la
l'utiliser avec mes fonctions GDI+

Bon dev à tous.

Fred