title: how to make a transparent form when a VCL Style is enabled?
body: <p>I'm using the following code to make a form transparent, but when the application has a VCL style enabled the form is paint with the background color of the VCL style instead of be transparent. </p>
  
  <pre><code>uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs;
  
  type
    TForm1 = class(TForm)
      procedure FormShow(Sender: TObject);
      procedure FormCreate(Sender: TObject);
    private
      { Private declarations }
      procedure CreateParams(var Params:TCreateParams); override;
    public
      { Public declarations }
    end;
  
  var
    Form1: TForm1;
  
  implementation
  
  {$R *.dfm}
  
  procedure TForm1.CreateParams(var Params: TCreateParams);
  begin
   inherited CreateParams(Params);
   Params.ExStyle := WS_EX_TRANSPARENT or WS_EX_TOPMOST;
   //Params.ExStyle := Params.ExStyle or WS_EX_LAYERED;
  end;
  
  procedure TForm1.FormCreate(Sender: TObject);
  begin
   Brush.Style:=bsClear;
   BorderStyle:=bsNone;
   //SetLayeredWindowAttributes(Handle, 0, 230, $00000002);
  end;
  </code></pre>
  
  <p>FYI The code works fine if the the vcl style is set to <code>Windows</code>.</p>
  
  <p>Exist another way to make a form transparent to workaround this issue?</p>