Solved

Bitmaps

Posted on 1997-12-18
4
321 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

Active Directory Webinar

We all know we need to protect and secure our privileges, but where to start? Join Experts Exchange and ManageEngine on Tuesday, April 11, 2017 10:00 AM PDT to learn how to track and secure privileged users in Active Directory.

Question has a verified solution.

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

Suggested Solutions

Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
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…

821 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