「位置を固定する(Vz風)」とdisabledrawにNo.08954
草餅 さん 05/12/15 09:47
 

こんにちは。

Ver5.12β3で、

[位置を固定する(Vz風)]に設定して、

openfile $a;
searchdown $b,hilight;
endmacro;

の場合はヒットした文字列は
正しく画面上の上から3行目にありますが、

openfile $a;
disabledraw;
searchdown $b,hilight;
endmacro;

と「disabledraw」追加すると、画面上の下から3行目になります。
検証お願いします。

[ ]
RE:08954 「位置を固定する(Vz風)」とdisaNo.08963
秀丸担当 さん 05/12/15 14:01
 

ヘルプにも一応書いてありますが、disabledrawをしてから描画が復帰する場合、
スクロール位置は秀丸エディタが勝手に決めてしまいます。
enabledrawのパラメタでスクロール位置を明示的に指定してやると解決できると
思います。

[ ]
RE:08963 「位置を固定する(Vz風)」とdisaNo.08969
草餅 さん 05/12/15 18:52
 
>
>ヘルプにも一応書いてありますが、disabledrawをしてから描画が復帰する場合、
>スクロール位置は秀丸エディタが勝手に決めてしまいます。
>enabledrawのパラメタでスクロール位置を明示的に指定してやると解決できると
>思います。

ヘルプにありました。
申し訳ありません。

以下ヘルプより抜粋。

> enabledrawが実行された時、カーソルが画面のどの位置に表示されるかは
> 秀丸エディタ側が適当に決めてしまいます。
> これをマクロ側で制御するには、enabledraw文のパラメタで画面の一番上の
> 行番号(ワープロ的に計算した行番号)を指定してください。
>
> 例:(検索で見つけた文字列をウィンドウの中央に表示する場合)
>
> disabledraw;
>  searchdown "abc";
>  enabledraw y - windowheight / 2;

[ ]