HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2013
0605
6WF1ウィンドウのサイズ変更7解決


6WF1

リンク

2013/6/5(Wed) 19:55:24|NO.54599

アクティブになってるウィンドウが
指定したサイズでなかったら
指定したサイズに変更。
という形にしたいのですが
お分かりの方ぜひ教えていただけないでしょうか?(*;ω人)



この記事に返信する


ht.

リンク

2013/6/5(Wed) 20:19:19|NO.54600

アクティブというのは他のプロセスが所有するウインドウを含めるのでしょうか。
それとも自作のウインドウがアクティブになったタイミングでサイズ調整をしたいということですか?



6WD1

リンク

2013/6/6(Thu) 12:12:35|NO.54616

他のプロセスですね!
指定したサイズが見つかれば
また、別の指定したサイズに
変更。

と言う形にしたいのです笑



cats

リンク

2013/6/6(Thu) 19:23:10|NO.54625

こんな感じでしょうか。
GetForegroundWindowでアクティブなウィンドウのハンドルを取得し
GetWindowRectでサイズを取得
SetWindowPosで位置とサイズを指定します。

#uselib "user32.dll" #func GetForegroundWindow "GetForegroundWindow" #func SetWindowPos "SetWindowPos" int,int,int,int,int,int,int #func GetWindowRect "GetWindowRect" int,int screen 0,640,480 dim rect, 4 repeat redraw 0 color 255,255,255:boxf:color GetForegroundWindow hwnd_=stat GetWindowRect hwnd_,varptr(rect) pos 0,0 mes "アクティブなウィンドウのハンドル:"+hwnd_ mes rect(2) mes rect(3) if rect(2)!640 and rect(3)!480{//もしX=640,Y=480でなかったら //SetWindowPos hwnd_,,rect(0),rect(1),640,480, //上の行のコメントを外せばアクティブウィンドウが640x480に変わります(注意) } wait 1 redraw 1 loop
ただ指定したサイズ以外のアクティブなウィンドウのサイズをすべて変更するのは
ユーザーとしては困る気がします(ブラウザ小さくなったり)



6WF1

リンク

2013/6/6(Thu) 21:46:52|NO.54636

あぁ、、確かに・・・
例えばこれがIEだけを指定して
IEがそのサイズでなければ。
ってのはできるんでしょうか?



cats

リンク

2013/6/7(Fri) 18:27:11|NO.54648

IEのサイズ変えるんですね。
IEのハンドル取得すればいいだけなので検索サイトを活用しましょう。

#uselib "user32.dll" #cfunc FindWindow "FindWindowA" sptr, sptr #func GetForegroundWindow "GetForegroundWindow" #func SetWindowPos "SetWindowPos" int,int,int,int,int,int,int #func GetWindowRect "GetWindowRect" int,int screen 0,640,480 dim rect, 4 repeat redraw 0 color 255,255,255:boxf:color GetForegroundWindow hwnd_=stat GetWindowRect hwnd_,varptr(rect) pos 0,0 mes "アクティブなウィンドウのハンドル:"+hwnd_ mes rect(2) mes rect(3) if hwnd_=FindWindow("internet explorer_server", 0){ if rect(2)!640 and rect(3)!480{//もしX=640,Y=480でなかったら //SetWindowPos hwnd_,,rect(0),rect(1),640,480, //上の行のコメントを外せばアクティブウィンドウが640x480に変わります(注意) } } wait 1 redraw 1 loop



6WF1

リンク

2013/6/7(Fri) 19:49:22|NO.54655

サンプルどうもありがとうございます!
早速ためしてみます!



6WF1

リンク

2013/6/7(Fri) 19:49:39|NO.54656

解決!



ONION software Copyright 1997-2023(c) All rights reserved.