1

画面上の任意の場所に (DirectX/DirectDraw メソッドを介して) オーバーレイされたグラフィック領域を設定できるようにするか、少なくともウィンドウ領域内で使用できるようにする必要があります。誰でもこれを行うことができましたか?

4

2 に答える 2

1

最近、すべての GUI に C# を使用し、ウィンドウ内の高速 3D に DirectX を使用する同様のアプリケーションを作成しました。C# は迅速な GUI 開発には優れていましたが、GDI+ は私たちのプログラムには十分な速さではありませんでした。そのため、C# ウィンドウ内の Panel で WndPrc 関数をオーバーライドし、マウス イベントとペイントのすべての制御を C++ dll に移しました。結果はスムーズで、迅速なアプリケーション開発のすべての側面を複雑な 3D バックエンドと組み合わせることができました。

于 2011-04-20T03:24:22.033 に答える
1

あなたが望むのは「レイヤードウィンドウ」だと思います。以下は、 DirectX (および OpenGL) を使用してレイヤード ウィンドウを作成する方法を示す例です。

レイヤード ウィンドウを使用すると、通常のウィンドウ フレームを透明 (または半透明) にして、描画したコンテンツがデスクトップや他のウィンドウの上に「浮いている」ように見えます。

于 2009-06-03T22:38:18.993 に答える