Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

INVASION 5 SMILIE


Information sur la source

Description

5 smilie transparent sur l ecran

utilisation de
HRGN BitmapToRegion (HBITMAP hBmp, COLORREF cTransparentColor = 0, COLORREF cTolerance = 0x101010)

qui vien de
http://www.cppfrance.com/codes/MP3-PLAYER_44687.aspx
et
http://www.cppfrance.com/codes/DEV-CPLUSPLUS-FENETRE-TRANSPARENTE-NON-RECTANGULAIRE_44803.aspx

rajouter 2 fonction
int SaveRegion(HRGN hRgn,char *name);
sauver la region a utiliser et

pour utiliser dans un program extern
HRGN  LoadRegion(char *name);





 

Source

  • int SaveRegion(HRGN hRgn,char *name);
  • HRGN LoadRegion(char *name);
  • ////////////////////////////////////////////////////
  • int SaveRegion(HRGN hRgn,char *name)
  • {
  • int iSize = GetRegionData(hRgn, sizeof(RGNDATA), NULL);
  • // Allocate memory to hold the region data
  • RGNDATA* pData = (RGNDATA*)calloc(iSize, 1);
  • pData->rdh.dwSize = iSize;
  • // Get the region data
  • int iSize2 = GetRegionData(hRgn, iSize, pData);
  • // Sanity check
  • if (iSize != iSize2) return 0; //
  • // ::MessageBox(NULL, L"Something wrong with GetRegionData...", L"Error", MB_ICONERROR);
  • // Save region data to a file
  • FILE* f = fopen(name, "wb");
  • fwrite((char*)pData, sizeof(char), iSize, f);
  • fclose(f);
  • // Free allocated memory
  • free(pData);
  • // Delete our region
  • //DeleteObject(hRgn);
  • return 1;
  • }
  • ////////////////////////////////////////
  • HRGN LoadRegion(char *name)
  • {
  • // Open file to read region data
  • FILE* f = fopen(name, "rb");
  • // Get size of the file
  • fseek(f, 0, SEEK_END);
  • int iSize = ftell(f);
  • fseek(f, 0, SEEK_SET);
  • // Allocate memory to hold the region data
  • RGNDATA* pData = (RGNDATA*)calloc(iSize, 1);
  • // Read region data from file
  • fread((char*)pData, sizeof(char), iSize, f);
  • fclose(f);
  • // Create region from loaded region data
  • HRGN hRgn = ExtCreateRegion(NULL, iSize, pData);
  • // As a demonstration, set the loaded region as window region
  • // so it is visually clear that it got loaded correctly.
  • //::SetWindowRgn(g_hWnd, hRgn, TRUE);
  • // Free allocated memory
  • free(pData);
  • return hRgn;
  • }
  • /////////////////////////////////////////////////
int SaveRegion(HRGN hRgn,char *name);
HRGN  LoadRegion(char *name);



////////////////////////////////////////////////////
int SaveRegion(HRGN hRgn,char *name)
{
  
   int iSize = GetRegionData(hRgn, sizeof(RGNDATA), NULL);

   // Allocate memory to hold the region data
   RGNDATA* pData = (RGNDATA*)calloc(iSize, 1);
   pData->rdh.dwSize = iSize;

   // Get the region data
   int iSize2 = GetRegionData(hRgn, iSize, pData);
   // Sanity check
   if (iSize != iSize2) return 0; //
     // ::MessageBox(NULL, L"Something wrong with GetRegionData...", L"Error", MB_ICONERROR);

   // Save region data to a file
   FILE* f = fopen(name, "wb");
   fwrite((char*)pData, sizeof(char), iSize, f);
   fclose(f);

   // Free allocated memory
   free(pData);

   // Delete our region
   //DeleteObject(hRgn);
   return 1;
}


////////////////////////////////////////
HRGN  LoadRegion(char *name)
{
	// Open file to read region data
	FILE* f = fopen(name, "rb");
	// Get size of the file
	fseek(f, 0, SEEK_END);
	int iSize = ftell(f);
	fseek(f, 0, SEEK_SET);
	// Allocate memory to hold the region data
	RGNDATA* pData = (RGNDATA*)calloc(iSize, 1);
	// Read region data from file
	fread((char*)pData, sizeof(char), iSize, f);
	fclose(f);

	// Create region from loaded region data
	HRGN hRgn = ExtCreateRegion(NULL, iSize, pData);


	// As a demonstration, set the loaded region as window region
	// so it is visually clear that it got loaded correctly.
	//::SetWindowRgn(g_hWnd, hRgn, TRUE);
	// Free allocated memory
	free(pData);

	return hRgn;
}
/////////////////////////////////////////////////

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

Aucun commentaire pour le moment.

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

allegro : charger 1 bitmap [ par Djedie ] je voudrais afficher 1 bitmap en 800 600 et en 24 ou 32 Bits.je fais :load_bitmap(...)ouload_bmp(...)j'arrive pas trop a voir la difference, sachant q Image transparante sans font fixe [ par Suisse00 ] Bon voilà j'essai depuis quelque temps de faire en sorte que mon bitmap sois transparent. J'ai réussi mais le problème c'est que pour l Timer allegro !!Et pour quitter le prog apres ? [ par Darksheep ] Bonjour, je commence à programmer avec allegro ;) mais voila je butte : des que j'utilise un timer je n'arrive plus à quitter mon jeu !j'ai Region Bitmap [ par DarkBoss ]    Salut,Voilà, je désirerais créer une application skinnable, mais le probleme c' est que je n' utilise pas ces *** de Bitmap transparent [ par safira ] safira:)Salut! Savez-vous comment rendre un bitmap transparent?Merci Déplacer Bitmap à la souris [ par GoldenEye ] Bonjour, Je souhaiterais afficher une (grande) image bmp dans une fenêtre de taille fixe. A chaque fois que l'utilisateur presse le bouton gauche, le m_ofn (MFC) [ par flatmax ] encore une question assez simple, mais la réponse n'est pas evidente :comment modifier les propriétés de la fenetre " enregistrer" créer avec la class bitmap [ par lapal ] salutj'aimerais lire une image bitmap en noir et blanc mais je ne sais pas comment faire. pouvez vous m'aider?merci inserer un bitmap dans une fenetre [ par petguet ] salut a tous,j'aimerais savoir quel est le code pour pouvoir inserer un Bitmap(image) dans une fenetre?une question secondaire serait comment proramme access OLE bitmap [ par Loizo ] Salut à tous, Je vais essayé de faire court :)Voila j'ai une base de données Access avec une table à l'interieur du dedans...Dans ma table j'ai un cha


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,998 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.