miauのブログ

はてなダイアリー「miauの避難所」をはてなブログに移行しました

コントロールの幅を広げるスクリプト書いた

一昔前のアプリケーションだと、狭いディスプレイを想定して小さなダイアログを出すようになっていたりします。

例えば「ファイル名を指定して実行」で長いパス名を入れたい場合、

こんな感じで全部表示しきれなかったりして不便です。

そんなわけで、コントロールの幅を広げるスクリプトを書いてみました。

完成品

また Gist に置いてますので、適当にダウンロードなり clone してください。

実行方法&実行例

広げたいコントロールの上にマウスポインタを置いた状態で、ランチャーかショートカットキーで↑のスクリプトを起動してください。

こんな感じでコントロール(&親コントロール)の幅が広くなります。

現在は 800 pixel 増やすようにしていますが、「これだけあれば足りるだろう」という適当なものですので、適当に調整してください。

本当は・・・

Excel の「シートの移動またはコピー」ダイアログ

に対して使いたかったんですけど、コントロールの構成が

こんな感じで。スクロールバー以外の部分は独自描画っぽくて、こういった手段ではリサイズできないようでした。残念。

その他感想とか

Python の ctypes は結構便利ですけど、ctypes.wintypes で構造体なんかも定義されているので、Win32 API の呼び出しも結構お手軽なんですねぇ・・・。前使ったときは POINT とか RECT とか、自分で定義しちゃっていた気がするので、書き直さねば。

ついうっかりスクリプト書いてしまいましたけど、もっとよさげなツールがあったら教えてください。あとスクリプトへのツッコミもあればお願いします。