Extending CPictureHolder for loading BMP, JPG, etc. Norman OK

This class extends the MFC CPictureHolder class to include better support for enhanced metafiles, access to picture handles, loading from files, and other capabilities.

Local Companies

Earnest Computer Service
405-732-1233
7005 SE 15th St
Oklahoma City, OK
Medical Office Solutions
405-737-3157
1113 S Douglas Blvd
Oklahoma City, OK
Software Development Technologies
405-232-6000
101 Park Ave
Oklahoma City, OK
Midwest CAM Solutions (GibbsCAM)
763-560-6567
NOW SERVING: OKLAHOMA
Oklahoma City, OK
Jepal Inc
(405) 360-2901
2600 Van Buren St
Norman, OK
Amax Computer
405-605-5899
926 Straka Terrace
Oklahoma City, OK
Advanced Financial Solutions
405-787-1800
1214 Sovereign Row
Oklahoma City, OK
Docsoft
405-236-2466
114 E Sheridan Ave
Oklahoma City, OK
Advanced Network Design
405-606-6060
211 N Robinson Ave
Oklahoma City, OK
Data Design Inc
(405) 321-0354
2408 Tee Cir
Norman, OK

provided by: 
Originally published at Internet.com


Environment: VC6 (earlier probably ok too), Win2K/95/98

This class extends the MFC CPictureHolder class to include




Simply include the .h and .cpp into your project and use it as you would CPictureHolder.

You can also use this instead of the CBitmap class (but with code changes, of course).

And remember that CPictureHolder has a Render method to draw pictures, and it support transparency for GIF's etc.

I built this with various versions of VC6. I don't see why it wouldn't work on other recent versions.

NOTE 1: I would usually have made many of these member functions const. However, CPictureHolder doesn't use any consts, and so I would have to have done lots of (potentially unsafe) const casts in my code.

NOTE 2: Chensu says that OldLoadPicture/IPicture has problems with palettes. I haven't looked at his code yet, but if so, I will (with his permission) update this code to include whatever fixes he added to better support palettes

NOTE 3: I haven't included support for icons in here. It would be trivial to add so I'll leave it as an excercise for the reader :-) ...

Read article at Internet.com site

Featured Local Company

Amax Computer

405-605-5899
926 Straka Terrace
Oklahoma City, OK


Topics: 
Architecture & Design Languages & Tools Project Management Web Services
Database Microsoft & .NET Security Wireless
Java Open Source Techniques XML