「マウスルーペ」をVer.UP (v1.50)

ちょっと期間限定でマルチモニタ環境が手に入ったので、試しに「マウスルーペ」のマルチモニタ対応化に手を出してみました。(自分でもわりと使うツールでもあるので)
今までのバージョンだと、マルチモニタ環境ではプライマリモニタ上のイメージしか表示できませんでしたが、今回のバージョンアップでセカンダリモニタとか、さらにはサード以上のモニタがあっても各モニタ上のイメージを表示できるはずです。(多分 ^^;)
一般的な横並びだけでなく、縦並びとか、少しズレた並べ方をしても大丈夫なはずです。(簡単な確認では大丈夫そうでしたが・・・^^;)
ちなみに、スナップショット式の設定にした場合、全てのモニタで表示される全領域のイメージをいったんメモリ上に取り込んでしまうため、環境によってはメモリ消費サイズがそれなりに大きくなってしまう可能性があります、あらかじめご了承ください。
ダウンロードは「オンラインソフトの間からどうぞ。
以下、技術的なメモ。


当初は対策にそれなりに難儀するんじゃないかと想像してましたが、意外とあっさり解決。
要は複数のモニタで構成される仮想画面の全体と、各モニタ上でのサイズや開始点が判明すれば良い訳で、基本的なマルチモニタ用APIを利用するだけで処理の拡張も比較的簡単に済みました。
仮想画面全体の方は、GetSystemMetrics()に SM_XVIRTUALSCREEN,SM_YVIRTUALSCREEN,SM_CXVIRTUALSCREEN,SM_CYVIRTUALSCREEN を引数にして取得。
各モニタ上では、マウスカーソル位置を元にMonitorFromPoint()でモニタを判別し、GetMonitorInfo()で情報を取得。

コメント

コメント(1)

  1. ぐっち~ on

    お世話になっております。
    嬉しいバージョンアップとなりました。
    作者様に感謝感謝。
    掲示板へ初投稿の時、リクエストしようかと悩んでおりました。
    しかし暗に「モニタ、もう1枚買ってね」となりますので、無言としました。
    家庭でも仕事でも、この「マウスルーペ」と「Windowサイズ!」は手放せません。
    共に2つのモニタで大活用しております。
    改めまして、一言。
    素晴らしいアプリケーションを創造・公開していただき、ありがとうございます。

    返信

コメントする