5
私は以下のこのコードを見つけて、私のWinFormアプリケーションに実装して、ユーザーの多くが技術的には役に立たないようにしました。タスクバーのフラッシュを紛失した場合
残念ながら、何もしません。エラーや何も生成しません。それは単にそれをフラッシュにしません。
誰でも洞察力を提供できますか? Win 7(x64)& Win XP(x86)で試してみましたが、両方で同じ結果が得られました。
私はそれをそう呼んでいます - >TaskbarFlasher.FlashWindow(this);
私のメインフォームから。
[DllImport("user32.dll")]
private extern static bool FlashWindow(IntPtr hwnd, bool bInvert);
[DllImport("user32.dll")]
private extern static IntPtr GetForegroundWindow();
/// <summary>
/// Notifies the user that the application requests attention
/// by flashing the taskbar if the form is not the current window.
/// </summary>
/// <param name="myForm">The form in question.</param>
public static void FlashWindow(Form myForm)
{
// if the current foreground window isn't this window,
// flash this window in task bar once every 1 second
if (GetForegroundWindow() != myForm.Handle)
{
FlashWindow(myForm.Handle, true);
}
}
あなたのアプリをメールクライアントにクリックした貧しい人々に悲鳴を上げる悲鳴を上げる欲求を払うことを望むのはなぜですか? :D –
実際には、すでにオープンしているか、DataEntryアプリの複数のインスタンスを実行しようとしているのを手伝う必要があります。 –
本当にやりたいことは、アプリケーションの1つのインスタンスを確保することですこれは別の種類の質問です。 WindowsのUIガイドラインにフォーカスの喪失通知を悪用する(実際にはねつける)代わりに、してください、あなたが計画していることをしないでください。 –