Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I make a form transparent according to a PNG image?

I have a PNG image that uses transparency (it is actually a circle with gradient effect from black in the middle, to transparent on the margins). I am putting this on a form using TImage. I set TForm1.Color and the TForm1.TransparentColorValue to the same value and TForm1.TransparentColor:=true.

Now, when I run the program the gradient part of the image is displayed with the color of the form. What I am looking for is to enable the transparency of the PNG image using the transparent form effect.

What am I doing wrong? I am using Delphi 2010 Trial.

like image 550
Chris Ghenea Avatar asked Oct 13 '09 06:10

Chris Ghenea


2 Answers

I suspect you're trying to create something like a transparent splashscreen, if that's the case, you can read these great articles, they describes a nice way to use a transparent png in a delphi form.

  • Alpha Blended Splash Screen in Delphi - Part 1
  • Alpha Blended Splash Screen in Delphi - Part 2

Bye.

like image 191
RRUZ Avatar answered Sep 27 '22 17:09

RRUZ


Your settings are wrong. I am doing this (With a bitmap).

The TImage.Transparent should be false.

The Form.TransparentColourValue should be the colour of the part of The TImage that you want to be transparent.

The Form.TransparentColor should be True.

[Edit] It does not matter what colour the form is if the Image covers it completely

like image 33
Despatcher Avatar answered Sep 27 '22 16:09

Despatcher