何か創りたい。
http://toshirr.blog13.fc2.com/
* Toshi's Recess Room - Toshi Creates. - ホイールは回すより押す
<< 2017/09 - 2017/10 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 - 2017/11 >>

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[ No. ]
[ 日時 : --/--/-- (--.) --:--:-- ]
[ カテゴリ : スポンサー広告 ]


ホイールは回すより押す

タブの部分をホイール クリックしたら閉じる処理、
リンクの部分をホイール クリックしたら新しいタブで開く処理、
何かとホイールは使いどころがあります。

タブの部分の方はサブ クラス化でどうにでもなるのですが、
リンクの部分の方は非常にややこしいものとなっていました。

そもそもホイール クリックされたことは WM_MBUTTONUP メッセージで知るのですが、
当然の如くこのメッセージは IE コンポーネントのウィンドウに向かってぶっ飛ぶので、
こちらもサブ クラス化か。。。なんて言っていてはもっと面倒になります。
ウィンドウはいくつもあるかも知れないのです。
一つ一つサブ クラス化していたら、日が暮れて夜が明けてしまいます。

あるではないですか。
サブ クラス化をせずにメッセージを横取りする手段が。

そう、フックです。
この場合はプロセスにローカル フックを仕掛けるといいのです。

仕掛ければ、WM_MBUTTONUP メッセージをうまいこと釣り上げて料理することが出来ます。

簡単に申しますと、
ポインタの下にあるリンクの情報を取得するということになります。
これが中々面倒なようで面白く、IWebBrowser2 インターフェイスから始まり、
合計 6 ものインターフェイスを渡り歩いてやっとのことで辿り着きます。
それを Unicode から Shift JIS に変換して、新しいタブで開けばよいことになります。

具体的な手法は載せるのが面倒なので載せませんが、これは楽しいです。
スポンサーサイト

[ No. 329 ]
[ 日時 : 2006/06/30 (Fri.) 23:58:13 ]
[ カテゴリ : プログラミング ]
[ コメント : 0 ]
[ トラック バック : 1 ]


コメント


コメントの投稿









トラック バック

[ No. 8 ]
[ ブログのタイトル : VALGUS開発日記 2.0 ]
[ 記事のタイトル : ホイールクリック ]
[ 日時 : 2008/05/17 (Sat.) 10:57:29 ]

ホイールは回すより押す


トラック バック URI

http://toshirr.blog13.fc2.com/tb.php/329-56425e9b


前後の記事

これ以降に書かれた記事 : Microsoft Windows Vista Beta 2
これ以前に書かれた記事 : 数社理英国

プロフィール

Toshi

  • Author:Toshi
  • 何かを創りたい Toshi の記録


ブログ内の検索


最近の記事


最近のコメント


最近のトラック バック


カレンダー

09 | 2017/10 | 11
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 - - - -


月別の記事


カテゴリ別の記事


RSS フィード


<< 2017/09 - 2017/10 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 - 2017/11 >>
* Toshi's Recess Room - Toshi Creates. - ホイールは回すより押す
http://toshirr.blog13.fc2.com/
(C) 2005 - 2009 Toshi, All Rights Reserved.

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。