mousemenuarrayでのメニュー表示不具合No.01488
Yuu さん 00/07/29 08:00
 
Windows 2000で秀丸を使っています。

編集中文書のコメント行をポップアップメニュー形式で表示し、選択
されたコメント行へジャンプする簡単なマクロを作ってみました。

しかし、メニュー項目が40以上になるとメニューが「アサッテの場所」
に表示され、項目が全部は表示されません。(menuarrayでも同じ症状)

何か回避策は無いでしょうか?

コメント行表示マクロ
//----------------------------------------------------------
#lnum=linecount2;// 行数
#n=0;
#number=0;
// 現在のカーソル位置の記憶
#precurx=x;
#precury=y;
disabledraw;// 再描画禁止
gofiletop;
while(#n < #lnum){
$mytext=gettext(0,#n,200,#n);// 現在行の取得
#colnum=strstr($mytext,"//");
if(#colnum>-1){// 検索がヒットしたら
$menutext[#number]=midstr($mytext,#colnum,50);
#linenum[#number]=#n;// 行番号
#number=#number+1;// メニューアイテム番号
}
#n=#n+1;// 検索行
moveto 0,#n;
}
enabledraw;// 再描画許可
moveto #precurx,#precury;// マクロ開始前のカーソル位置へ

mousemenuarray $menutext,#number;// メニュー表示
if(result==0) {
endmacro;
}
else{
moveto 0,#linenum[result-1];// 選択メニューアイテム行へ
}
//----------------------------------------------------------

編集文書の例
//----------------------------------------------------------
// 1
// 2
// 3
// 4
// 5
// 6
// 7
// 8
// 9
// 10
// 11
// 12
// 13
// 14
// 15
// 16
// 17
// 18
// 19
// 20
// 21
// 22
// 23
// 24
// 25
// 26
// 27
// 28
// 29
// 30
// 31
// 32
// 33
// 34
// 35
// 36
// 37
// 38
// 39
// 40
//----------------------------------------------------------

[ ]
RE:01488 mousemenuarrayでのメニュー表No.01489
山紫水明 さん 00/07/29 23:30
 
    Yuuさん こんばんは。

》しかし、メニュー項目が40以上になるとメニューが「アサッテの場所」
》に表示され、項目が全部は表示されません。(menuarrayでも同じ症状)

 この問題は,Nifty の会議室でも出され(私が出した(^^;),またここでも話題
になったことがあると思います。 Windows95 では正常に表示されるようですが,
98では40位になるとだめだったと思います。2000 でも変わらないようですね。
 秀丸担当さんの方で,検討事項に入れてもらっていると思います。

 では, (^^)/~
                                        山紫水明


[ ]
RE:01489 mousemenuarrayでのメニュー表No.01490
Yuu さん 00/07/30 07:26
 
 
   山紫水明さん こんにちは。
   コメントありがとうございます。
   
>Windows95 では正常に表示されるようですが,
>98では40位になるとだめだったと思います。2000 でも変わらないようですね。
>秀丸担当さんの方で,検討事項に入れてもらっていると思います。

メニュー項目が40以上というのはあまり普通の使い方ではないと思いますが、
検討事項に入れてもらえると有り難いですね。  (^^)

Yuu

[ ]