前提・実現したいこと
他ウィンドウのアプリケーションの操作自動化 下端までスクロールしたい。
具体的には
- notepadにスクロールバーが表示されるまで入力し、最終行にfooと入力[手動]
- 一旦スクロールバーを上端まで移動し、最終行のfooが表示されていない事を確認する[手動]
- スクロールバーを下端まで移動する命令を送る[行いたい処理、自動]
- スクロールバーが下端まで移動し、最終行のfooが表示されている事を確認する。[手動]
という手順を行いたいのですがスクロールバーを動かす事ができません。
どのようなコードを書くべきなのでしょうか。ご教授ください。
よろしくお願いいたします。
発生している問題・エラーメッセージ
SendMessage( hWnd, WM_VSCROLL, SB_BOTTOM, NULL);
のメッセージ送出でスクロールを制御する事が出来ない。
該当のソースコード
c++
1 HWND hwnd = ::FindWindow(_T("notepad"), NULL); 2 ::SetForegroundWindow(hwnd); // 最前面表示 3 ::ShowWindow(hwnd, SW_MAXIMIZE); // 最大化 4 5 Sleep(300); // 最大化アニメーション待ち 6 7 // ご指摘によって修正 ::SendMessage(hwnd, WM_VSCROLL, SB_BOTTOM, NULL); // 最終行までスクロール 8 HWND hEdit = ::FindWindowEx( hwnd, NULL, _T("Edit"), NULL); 9 ::SendMessage(hEdit, WM_VSCROLL, SB_BOTTOM, NULL); // 最終行までスクロール
補足情報(FW/ツールのバージョンなど)
- VisualStudio2015SP
- Windows7/64bit SP
- VC++/MFC
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/31 05:46