タブ(Tabstrip)上のコントロール配列のインデックスを管理するには?

解決


チョコバット向井  2005-01-26 22:28:55  No: 88035

VB6.0でTabstrip、Webbrowserを使って、タブブラウザを作ろうとしています。
Tabの切替と同時に、コントロール配列であるWebBrowserのVisibleを変更し、表示されるWebBrowserを切り替えています。
選択されたTabを削除する機能をつけたいのですが、Tabの削除と同時に、対応するWebBrowserをunloadすると、Tabのindexは自動的に再配置されるためWebBrowser
のindexとずれが生じてしまい、表示するWebbrowserコントロールが選択されたTabのindexで指定する事ができなくなってしまいます。

図解します↓
[Tab] 1 2 3 4 5 ...  Tab(3)をRemove  ⇒  1 2 3 4
[Web] 1 2 3 4 5 ...  Web(3)をUnload  ⇒  1 2 4 5
                                             ~~~↑indexがずれてしまう。

TabとWebBrowserのindexを関連付ける配列を用意すれば可能とは思いますが、
どうもスマートなやり方ではない気がしています。
なにか良い方法はないでしょうか?

また、Tab上の右クリックで右クリックメニューを表示して、指定したTabを
削除したいのですが、どのTab上で右クリックが押下されたかを知りたいのですが
どうすればよいでしょうか?

ご教授お願いします。


ねろ  2005-01-26 23:56:35  No: 88036

>TabとWebBrowserのindexを関連付ける配列を用意すれば可能とは思いますが、
indexで関連付けるのではなく、Tagで関連付たらいかがですか。

>どのTab上で右クリックが押下されたかを知りたいのですが
どのタブ上といっても、現在アクティブになっている、タブですよね。
TabStrip1.SelectedItem.Index


チョコバット向井  2005-01-27 00:46:13  No: 88037

ありがとうございました。
おかげさまでなんとかなりそうでした。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加