Tworzenie przeźroczystego formularza

Tworzenie przeźroczystego formularza ma jedynie sens, gdy ma on pozostać nieruchomy i nie będzie zasłaniany przez inne okna ponieważ po przesunięciu formularza jego przeźroczystość znika, a gdy znajduje się nad nim jakieś program który później zostanie np. zminimalizowany lub zamknięty to w miejscu, w którym przykrywał nasz przeźroczysty formularz pozostanie po nim widoczne to co go zasłaniało. Przeźroczysty formularz możemy utworzyć na dwa sposoby:

I sposób:

W konstruktorze formularza zmieniamy jego kolor wypełnienia na przeźroczysty (bsClear):

Unit1.cpp

__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
{
   Brush->Style = bsClear;
}

II sposób:

Nadpisujemy funkcję CreateParams, która odpowiada za wygląd formularza, w pliku nagłówkowym formularza umieszczamy deklarację tej funkcji:

Unit1.h

virtual void __fastcall TForm1::CreateParams(TCreateParams &Params);

a jej definicję umieszczamy w pliku formularza:

Unit1.cpp

void __fastcall TForm1::CreateParams(TCreateParams &Params)
{
   TForm::CreateParams(Params);
   Params.ExStyle = Params.ExStyle | WS_EX_TRANSPARENT;
}