HDC vers HBITMAP [Résolu]

julien_boss 165 Messages postés samedi 4 juin 2005Date d'inscription 24 octobre 2007 Dernière intervention - 4 juin 2007 à 19:16 - Dernière réponse : julien_boss 165 Messages postés samedi 4 juin 2005Date d'inscription 24 octobre 2007 Dernière intervention
- 5 juin 2007 à 16:18
Bonjour,
j'ai un DC, contenant un dessin..., je souhaite pouvoir transférer son contenu dans un bitmap de type HBITMAP, afin ensuite de la mettre dans le clipboard.
Je sais mettre une image de type HBITMAP dans le clipboard mais pas comment transférer le contenu d'un DC vers un HBITMAP.
Si vous pouviez m'aider sur ce coup ;)
Merci
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
racpp 1910 Messages postés vendredi 18 juin 2004Date d'inscription 14 novembre 2014 Dernière intervention - 5 juin 2007 à 01:23
3
Merci
Salut,
Voici un petit code que je viens d'écrire. Il est mis dans le traitement de WM_PAINT. Il dessine un rectangle blanc sur la fenêtre puis écrit un petit texte en rouge. Il crée un HDC en mémoire  compatible avec l'affichage écran. Ensuite, il crée un bitmap compatible. Ce dernier est sélectionné dans notre HDC compatible. On copie dans ce dernier une portion du contenu de la fenêtre grâce à BitBlt(). Enfin, on met le HBITMAP dans le clipboard. Pour tester, je le colle dans un nouveau document Word. Ca marche parfaitement.
    case WM_PAINT:
        {
            PAINTSTRUCT ps;
            HDC hdc=BeginPaint(hwnd,&ps);
            Rectangle(hdc,10,10,60,60);
            SetTextColor(hdc,RGB(255,0,0));
            TextOut(hdc,10,10,TEXT("123456"),6);
            HDC cDC=CreateCompatibleDC(0);
            HBITMAP hbmp=CreateCompatibleBitmap(hdc,100,100);
            SelectObject(cDC,hbmp);
            BitBlt(cDC,0,0,100,100,hdc,0,0,SRCCOPY);
            OpenClipboard(hwnd);
            EmptyClipboard();
            SetClipboardData(CF_BITMAP,hbmp);
            CloseClipboard();
            DeleteObject(hbmp);
            DeleteDC(cDC);
            EndPaint(hwnd,&ps);
            return 0;
        }

Merci racpp 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de racpp
julien_boss 165 Messages postés samedi 4 juin 2005Date d'inscription 24 octobre 2007 Dernière intervention - 5 juin 2007 à 16:18
0
Merci
Ok merci j'ai compris le principe.
A bientot
Commenter la réponse de julien_boss

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.