|
h-tom です。
モニタの設定
┌─┐┌─┐
│1││2│
└─┘└─┘
1:プライマリ
2:セカンダリ
セカンダリモニタにファイルがある状態で、setwindowpos文を使うと、
プライマリモニタへ移動してしまいます。
//現状維持のつもり
setwindowpos windowposx, windowposy, windowcx, windowcy;
座標値を見ると、モニタの範囲外になっているので、その影響ですかね?
ちなみに、起動オプションの"/(x,y,w,h)"で指定した場合は、問題なさそう。
#デスクトップ保存・復元マクロのマルチモニタ対応で、座標指定を
#起動オプションからsetwindowposに変えたら、動作がおかしくなって
#気がつきました。
//ここから
openfile "/i";
$out = "";
setmonitor 0;
$out = $out + "monitor:" + str(monitor) + "\n" +
"posx:" + str(windowposx) +
" posy:" + str(windowposy) + "\n" +
"width:" + str(windowcx) +
" height:" + str(windowcy) + "\n" +
"cxscreen:" + str(cxscreen) +
" cyscreen:" + str(cyscreen) + "\n";
$out = $out + "--------------------------\n";
setmonitor 1;
$out = $out + "monitor:" + str(monitor) + "\n" +
"posx:" + str(windowposx) +
" posy:" + str(windowposy) + "\n" +
"width:" + str(windowcx) +
" height:" + str(windowcy) + "\n" +
"cxscreen:" + str(cxscreen) +
" cyscreen:" + str(cyscreen) + "\n";
$out = $out + "--------------------------\n";
setwindowpos windowposx, windowposy, windowcx, windowcy;
$out = $out + "monitor:" + str(monitor) + "\n" +
"posx:" + str(windowposx) +
" posy:" + str(windowposy) + "\n" +
"width:" + str(windowcx) +
" height:" + str(windowcy) + "\n" +
"cxscreen:" + str(cxscreen) +
" cyscreen:" + str(cyscreen) + "\n";
$out = $out + "--------------------------\n";
message $out;
endmacro;
//ここまで
出力結果
---------------------------
秀丸エディタ
---------------------------
monitor:0
posx:66 posy:66
width:768 height:536
cxscreen:1024 cyscreen:768
--------------------------
monitor:1
posx:1090 posy:66
width:768 height:536
cxscreen:1024 cyscreen:768
--------------------------
monitor:0
posx:66 posy:66
width:768 height:536
cxscreen:1024 cyscreen:768
--------------------------
---------------------------
OK
---------------------------
|
|