システムトレイで実行されるアプリがあり、ユーザーがボタンの戦闘を押すと、入力する WinForm が表示され、電子メールが送信されます。すべてがうまく機能しますが、WinForm が表示されるときの部分です。上部に表示され、フォーカスがテキスト ボックスにあるように見えますが、ウィンドウはアクティブではありません。
ポップアップ フォームを呼び出すために使用されるコード。
My.Forms.frmpopup.ShowDialog()
ポップアップ フォームのコード
Private Sub frmPopup_Shown(sender As Object, e As EventArgs) Handles Me.Shown
Activate()
BringToFront()
End Sub
Private Sub frmPopup_Load(sender As Object, e As EventArgs) Handles Me.Load
TextBoxName.Focus()
End Sub
ズボンの本当のキックは、ユーザーが現在 Internet Explorer ウィンドウに集中していない限り、これが機能することです。解決策が見つかったら、投稿します。
2 つのサブを 1 つのサブにマージすると問題が解決するようです。テストを続けます。
Private Sub frmPopup_Shown(sender As Object, e As EventArgs) Handles Me.Shown Activate() BringToFront() TextBoxName.Focus() End Sub