Solved

Bitmaps

Posted on 1997-12-18
4
316 Views
Last Modified: 2013-12-03
I dont really know how to word this question, so I'll explain.  I have a bitmap (of a large key).  I wish to display this bitmap, but I want it to be transparent (around the key, not through it).  I want other application running under the key to be shown through it (including the desktop, explorer etc).

I am running Windows 95 with Delphi 3.0

Any help would be appreciated.
0
Comment
Question by:SJohnson
  • 2
4 Comments
 
LVL 4

Expert Comment

by:StevenB
ID: 1354146
 If your picture is not too complicated then you might consider redrawing it as a Metafile, as this will handle the transparency.
  If this is not possible then you could either investigate the TImageList, which I believe has some transparency attributes, or search for a transparent image component on one of the component sites (Delphi Deli, Delphi Super Page).

  Steven.
0
 
LVL 3

Expert Comment

by:altena
ID: 1354147
take a look at the "bitblt" function in the win32 API.

(and play around with the "dwRop" parameter.)

  Good Luck
0
 
LVL 1

Author Comment

by:SJohnson
ID: 1354148
Maybe the question wasnt clear enough, I dunno.  Lets try again.  I have an image of a key (it would be impossible to make this a metafile).  I want to place this image on a form, as a transparent image, but also having the form either transparent as well, or, displaying the image independantly (without a form).  Does that help???  I will have to think a bit harder to try and explain it any better.

Stu
0
 
LVL 3

Accepted Solution

by:
altena earned 100 total points
ID: 1354149
Ok I'll also try again:

If you want to draw a transparent picture you basically do this:
  Define a color in the bitmap that is means transparent
  Use bitblt a few times to create a bitmap in memory that
  blends the "key" bitmap with the background. (See the animation book by Nigel Thomson for details). Then bitblt
that bitmap onto the screen: voila results.

To display this "key" independantly (without form): Just grab the screen-hdc and perfornm the same trick i described above.
and do the same trick.
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question