|
■No12868 (シャノン さん) に返信 > GetTabRectやMouseEventArgs.LocationはTabControlのクライアント座標、メニューを出すのはスクリーン座標であることに注意。 ContextMenuStripのShowメソッドの第2引数にTabControlのインスタンスを渡せば変換の手間を省けます。 ちなみにVSとFirefoxでは若干挙動が違うので書いておくと。 VS: MouseDown { GetTabRectを使い何番目のタブか取得。 そのタブを選択(SelectTab)する。 「タブ上で右クリックされた」ことを示すフラグを立てる。 } MouseUp { 「タブ上で右クリックされた」ことを示すフラグが立っていればメニュー表示。 呼び出された関数はTabControlのSelectedインデックスを元に処理を行う。 }
Firefox: MouseUp { GetTabRectを使い何番目のタブか取得。 タブの番号を変数に格納。 メニュー表示。 呼び出された関数は上記の変数を見て処理を行う。 }
#ちなみにFireFoxの表記は間違いです。
|