
No.2ベストアンサー
- 回答日時:
先の投稿のAPI関数はすべてWinAPIですので スコープ解決演算子『::』を関数の前につけましょう
HWND hWndFore = ::GetForgroundWindow();
if ( hWndFore != this->m_hWnd ) {
DWORD dwProcessID, dwThreadID;
dwThreadID = ::GetWindowThreadProcessId( hWndFore, &dwProcessID );
::AttachThreadInput( GetCurrentThreadId(), dwThreadID, TRUE );
::SetForground( this->m_hWnd );
::AttachThreadInput( GetCurrentThreadId(), dwThreadID, FALSE );
}
といった具合です
CDialogクラスにもWinAPIと同名のメンバー関数があるので上記のような記述が必要です
ありがとうございます。解決しました。
今日中に終わらせたかったので、本当に感謝です。
ちなみに、
>HWND hWndFore = ::GetForgroundWindow();
'e'が抜けていました。 GetForegroundWindow()
>::SetForground( this->m_hWnd );
'e'と"Window"が抜けていました。 SetForegroundWindow()
ありがとうございました。
No.1
- 回答日時:
AttachThreadInputを使って現在のフォアグランドのスレッドに接続しておいてからSetForGroundWindowを実行してみましょう
HWND hWndFore = GetForgroundWindow();
if ( hWndFore != this->m_hWnd ) {
DWORD dwProcessID, dwThreadID;
dwThreadID = GetWindowThreadProcessId( hWndFore, &dwProcessID );
AttachThreadInput( GetCurrentThreadId(), dwThreadID, TRUE );
SetForground( this->m_hWnd );
AttachThreadInput( GetCurrentThreadId(), dwThreadID, FALSE );
}
といった具合で ・・・
早速の回答、ありがとうございます。
まだ初心者の為、そのまま使用させて頂こうとしましたが、以下のエラーが発生しました。
>HWND hWndFore = GetForegroundWindow();
'initializing' : 'class CWnd *' から 'struct HWND__ *' に変換することはできません。
>SetForegroundWindow( this->m_hWnd );
'SetForegroundWindow' : 関数が不正な 1 個の実引数をともなって呼び出されました。
実は投稿前、単純に SetForegroundWindow() を使用しようとして、同じエラーが発生しました。
申し訳ありませんが、再度、助言を頂ければ幸いです。
作成中のソフトの補足です。
メインとなるダイアログはタスクトレイにあり、メッセージウインドウはモードレスダイアログです。
以上、よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
予算は5万円ぐらいで ノートパ...
-
レーザのスポット径の計算式
-
Galaxy s5のデスクホーム画面の...
-
JavaScript canvas グラデーシ...
-
引っ越し後受信しなくなった
-
eSIMのことで質問です。
-
ローディングアニメーションの...
-
JavaScript でpk戦のゲームを作...
-
プログラミングのC#言語のジャ...
-
Macのウィンドウが透ける
-
SPREAD(GrapeCity)のセルにフォ...
-
バスタード 完全版
-
コンボボックスの開いたリスト...
-
コンボボックスの三角を一時的...
-
メッセージボックスを前面に表...
-
初期フォーカスについて
-
子ダイアログのコントロールに...
-
Excelのマクロで実行時エラー”1...
-
eclipseでフォーカスされた変数...
-
DAMのデンモクの使い方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスを前面に表...
-
SPREAD(GrapeCity)のセルにフォ...
-
Excelのマクロで実行時エラー”1...
-
レーザのスポット径の計算式
-
Chrome フォーカス時に枠が表示...
-
C#でButtonのフォーカス枠を消...
-
DataGridViewで入力チェック後...
-
Tab順の設定とフォーカスの取得
-
コンボボックスの開いたリスト...
-
ComboBoxのフォーカスをはずす
-
初期フォーカスについて
-
雷のようなアニメーションをウ...
-
DAMのデンモクの使い方
-
TDSマジックランプシアター 箱...
-
コンボボックスの三角を一時的...
-
PowershellでCLIとISEの結果が違う
-
eclipseでフォーカスされた変数...
-
iPhoneのクイックアクションを...
-
至急です。 トイレに行きたいな...
-
Macのウィンドウが透ける
おすすめ情報