0

私は、本質的に他のアプリケーションの前の画面に常に表示され、他のウィンドウにフォーカスしているときにバックグラウンドに落ちないタイマーウィンドウであるアプリケーションを開発しようとしています。たとえば、全画面表示のゲームをプレイしているときに、このタイマーをゲームに重ねて表示したいのですが、ウィンドウのタイマー ボタンをクリックしてもゲームが閉じません。

C#/java/C++ でこれを達成する方法はありますか?

ありがとう

4

2 に答える 2

1

C#: ウィンドウ (フォーム) の AlwaysOnTop プロパティを設定してみてください
Java: フレームまたはダイアログで setAlwaysOnTop(true) を呼び出します

于 2012-04-26T18:32:42.860 に答える
0

あなたが達成したいことは 、C#でフォームのプロパティTopMost 、およびJava WindowでsetAlwaysOnTopで達成できると思います...

Windows 上の C++ では、SetWindowPos関数を呼び出し、引数としてHWND_TOPMOST属性を渡す必要があります。

アップデート

フルスクリーン モードのアプリケーションがあるので、Win32 API 関数SetForegroundWindowを使用してアプリケーションをフォアグラウンドに設定してみてください。

[System.Runtime.InteropServices.DllImport("user32.dll")]
public static extern bool SetForegroundWindow(IntPtr hWnd);

SetForegroundWindow(this.Handle);

それ以外の場合は、次のようなもので Win32 SetForegroundWindow関数を使用しないようにすることができます。

this.TopMost = true;
this.Activate();
于 2012-04-26T18:33:56.510 に答える