VC++2005 MFC WindowsXPを使用しています。
メインダイアログに作成したエディットボックスに
フォーカスをセットしたいのですが、
別スレッドから行うにはどのようにすればよいのでしょうか?
メインダイアログにあるボタンを押すと別スレッドの処理に入り、
その中でメインダイアログのコントロールを操作しようとしています。
//フォーカスをセット
CWnd* MyEdit = ( CWnd* )this->GetDlgItem( IDC_EDIT1 );
MyEdit->SetFocus();
宜しくお願い致します。
No.1ベストアンサー
- 回答日時:
こんにちは。
スレッドにダイアログ又はエディットボックスのハンドルを直接渡して、
::SetFocus(::GetDlgItem(hDlg, IDC_EDIT1));
の様にして、win32APIで操作するか、
CWnd* pDlg = CWnd::FromHandle(hDlg);
CWnd* pEdit = pDlg->GetDlgItem(IDC_EDIT1);
pEdit->SetFocus();
の様にして、スレッド内でハンドルからクラスを作成して操作するのではないでしょうか。
後思いつくのは、ダイアログにユーザー定義メッセージを追加し、スレッド内からユーザー定義メッセージをポストして、向こう側で何かをさせる位でしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CPU・メモリ・マザーボード CPUについて 4 2022/07/09 13:41
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- CPU・メモリ・マザーボード インテルCPUの世代ごとのデスクトップとノートのコア数についてこれで正しいですか?(*´ω`*) 1 2023/01/07 14:44
- ノートパソコン Windows11搭載パソコン 新規購入にあたって 4 2022/11/09 18:11
- グループウェア slackについて取り急ぎ教えて頂きたいことがあります 2 2022/04/08 09:05
- Windows Vista・XP やっぱり現代のPCにWindowsXPを入れるのは無理なのでしょうか? 4 2022/08/03 09:58
- Gmail gmailについて gmailで届いた順にメールが一通一通表示されているのを何とかしたいです。 今使 2 2022/08/12 22:18
このQ&Aを見た人はこんなQ&Aも見ています
-
賃貸で可能な古民家風レトロな部屋作りのコツ!改めて知る畳の高い機能性と魅力も紹介
畳の部屋を雰囲気のよい部屋に仕上げたい!賃貸住宅でもできる古民家風のレトロな部屋作りのコツを伺った。
-
スレッド処理からダイアログを表示するには?
C言語・C++・C#
-
CFileDialogの最初のディレクトリ設定
C言語・C++・C#
-
エディットボックスの入力制限について
C言語・C++・C#
-
-
4
別アプリの起動、終了について
C言語・C++・C#
-
5
ラジオボタンのグループ化
C言語・C++・C#
-
6
ボタンの表示の色、フォントを変更したい
C言語・C++・C#
-
7
AfxBeginThread の引数について
C言語・C++・C#
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WaitForSingleObjectの使い方に...
-
スレッドの安全な終了のさせ方
-
VC++スレッドの正しい終了のさ...
-
スレッド・アウェア(thread-awa...
-
スレッドの監視方法について
-
スレッドの終了はどうやるんで...
-
C++ GUIのメッセージループ。
-
マルチスレッド?
-
volatile の使い方
-
スレッドの名前の取得について
-
C言語で一定時間待機後、再実行
-
別スレッドからメインダイアロ...
-
LinuxでDoEvents()同等機能
-
Linuxでスレッド優先度って変え...
-
pthread_attr_tへの値の代入に...
-
マルチスレッドプログラミング...
-
マルチスレッドについて
-
マルチスレッドでの画像描画
-
Win32APIでのスレッド処理
-
VB2005 シリアル通信のClose処理
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VC++スレッドの正しい終了のさ...
-
WaitForSingleObjectの使い方に...
-
マイクロソフトedge で5チャン...
-
スレッドの安全な終了のさせ方
-
スレッドの終了はどうやるんで...
-
スレッドにて同一メモリの書き...
-
スレッドの監視方法について
-
マルチスレッドについて
-
スレッドの終了の仕方
-
Linuxでスレッド優先度って変え...
-
Windows上で、シグナル(SIGTERM...
-
LinuxでDoEvents()同等機能
-
VB2005 シリアル通信のClose処理
-
待機関数(WaitForMultipleObjec...
-
マルチスレッドプログラミング...
-
_beginthreadexで生成したスレ...
-
msec単位のWait Timerが作れない!
-
別スレッドからメインダイアロ...
-
マルチスレッドのスレッド数を...
-
.NetのBackgroundWorkerクラス...
おすすめ情報