タイトル : 拡大鏡の画面四隅へのドッキング状態を解除するには 投稿日 : 2014/03/05(Wed) 21:22 投稿者 : サリー
いつもお世話になっております。 Windows7の拡大鏡(magnify.exe)を所定の位置に表示させるプログラムを 書いています。 拡大鏡を起動し、 Dim lnghwnd As Long Dim i As Long lnghwnd = FindWindow("Screen Magnifier Window", vbNullString) If lnghwnd = 0 Then On Local Error Resume Next Call Shell("magnify.exe", vbNormalFocus) On Local Error GoTo 0 End If つぎの方法で拡大鏡(矩形)の表示位置を任意に指定しています。 lnghwnd = FindWindow("Screen Magnifier Window", vbNullString) Call SetWindowPos(lnghwnd, 0, 50, 100, 150, 300, SWP_NOSIZE) しかしながら、拡大鏡を起動した際にデスクトップ(画面)の上側に べったりと吸い付いている場合には、SetWindowPosでの位置指定や 「元のサイズに戻す」コマンドを送って言うことを聞いてくれません。 Const SC_RESTORE = &HF120 '元のサイズに戻す Const WM_SYSCOMMAND = &H112 Call SendMessage(hwnd, WM_SYSCOMMAND, SC_RESTORE, 0) 画面の上下左右に(タスクバーのように)吸い付いているものをマウス ドラッグを使わずにこのドッキングペインのようになったものを引き剥が すうまい方法はありますでしょうか。 ウィンドウをアクティブにしてからメッセージを送ってもみましたが やはり変化はありませんでした。 Magnification API (Vista以降)も、Magnification.dllに指定した関数が 含まれていないというエラーが発生し袋の小路です。 宜しくお願い致します。 |