SSTabのタブ切替前にイベント取得出来る?

解決


hitomi  2003-07-17 22:03:16  No: 107824  IP: [192.*.*.*]

はじめまして。

SSTabについて困っています。

現在のアクティブタブから、他のタブをクリックした契機で、
アクティブタブ内のコントロールチェックをしてから、
タブを切り替えたいのですが、現在、クリックした契機で
タブが切り替わってしまうため、チェックできません。

画面が切り替わる前に何かイベントが拾えないのでしょうか?

ちなみに、VisualBasic5.0です。

どなたか解る方がいらっしゃいましたら教えてください。
よろしくお願いします。

編集 削除
Say  2003-07-17 22:40:13  No: 107825  IP: [192.*.*.*]

サブクラス化かローカルフックで
マウスイベントを横取りするとか・・・。

隣の掲示板の「グローバルフック」と違って、
失敗しても自アプリが死ぬだけですし・・・。

編集 削除
hitomi  2003-07-18 11:07:44  No: 107826  IP: [192.*.*.*]

Sayさんがおっしゃっている、「マウスイベントを横取りする」方法とは
具体的に、どのような処理なのでしょうか?

テスト的に、MouseDownイベントで試してみたのですが、イベントが発生する
前にタブが切り替わってしまいました。

編集 削除
Say  2003-07-18 19:06:33  No: 107827  IP: [192.*.*.*]

>具体的に、どのような処理なのでしょうか?
サブクラス化かローカルフックで・・・と書いてますが?
サブクラス化のほうを推奨します。

コールバックで
Select Case uMsg
    Case WM_LBUTTONDOWN
        uMsg = 0
とすれば握りつぶせます。(メッセージの挿げ替えも可能です。)
詳しくは、プラットフォームSDKなり、Webなりで調べてください。

ちなみに、サブクラス化にせよフックにせよ、
VBにしては結構高度なことをやってますので、
ある程度自分で調べて、原理を理解しないうちは
手を出さないほうが無難です。

編集 削除
hitomi  2003-07-24 13:48:50  No: 107828  IP: [192.*.*.*]

サブクラス化やフックは、危険と判断し、色々調べた
結果、GotFocus時にTabを元に戻す方法で実現できました。
ありがとうございました。

編集 削除