6

半透明のフルスクリーン フォームがあり、このフォームでコンピューターを制御できる必要があります。

実際には、空を観察するためにコンピューターに赤いスクリーン フィルターが必要ですが、赤いプレキシガラスのようなものは使いたくありません。

Windows API (モニター構成関数) http://msdn.microsoft.com/en-us/library/windows/desktop/dd692964(v=vs.85).aspxを試しまし たが、できません。赤いフィルターのような透明なフォーム (すべてが赤と黒のトーンに見える) を作成しましたが、フォームをコンピューターで制御することはできません。誰でもそれについて私を助けてくれますか?

4

1 に答える 1

13

新しい VCL プロジェクトを作成します。メイン フォームのプロパティで、 to 、 to 、 to 、 to 、 to に設定し、次のコードを追加しColorます。clRedAlphaBlendtrueAlphaBlendValue127WindowStatewsMaximizedFormStylefsStayOnTop

type
  TForm1 = class(TForm)
  private
  protected
    procedure CreateParams(var Params: TCreateParams); override;

...

procedure TForm1.CreateParams(var Params: TCreateParams);
begin
  inherited;
  Params.ExStyle := Params.ExStyle or WS_EX_LAYERED or WS_EX_TRANSPARENT;
end;

(サンプル動画コンパイル済みEXEのサンプル、ソース)

于 2012-08-04T17:02:53.883 に答える