C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: WebBrowserのHTMLエディタでの漢字変換中Ev


(過去ログ 128 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■75889 / inTopicNo.1)  WebBrowserのHTMLエディタでの漢字変換中Ev
  
□投稿者/ サーカス (1回)-(2015/05/14(Thu) 16:12:14)

分類:[VB.NET/VB2005 以降] 

お願いします。VB2012を使用しています。

http://bbs.wankuma.com/index.cgi?mode=al2&namber=73013&KLOG=122
を参考に、WebBrowserを使って簡易HTMLエディタを作成しています。

一定のタイミングで現在編集中のHTMLの内容を一時ファイルに保存しようと思い、
タイマーを使い、タイマーのTickイベントでBodyのInnerHtmlの内容を保存しています。

ただ、日本語入力で漢字変換をしようとしている時にタイマーのTickイベントが発生すると、
漢字変換をしようとしている内容がひらがなの状態で一時ファイルに保存されてしまいます。

漢字変換中はこの処理をスキップしたいので、変換確定中であるかどうかを判定したいのですが、
これを調べる方法ってありますか?
またはWebBrowser上で漢字変換開始・変換確定のイベントのようなものは取得できないでしょうか?
引用返信 編集キー/
■75890 / inTopicNo.2)  Re[1]: WebBrowserのHTMLエディタでの漢字変換中Ev
□投稿者/ 魔界の仮面弁士 (320回)-(2015/05/14(Thu) 16:26:51)
No75889 (サーカス さん) に返信
> 変換確定中であるかどうかを判定したいのですが、
> これを調べる方法ってありますか?

ざっくり検索してみたところ、このような情報が見つかりました。
IE の動作についても書かれているようですが、参考になるでしょうか?
http://qiita.com/hnakamur/items/9a9ca2663285e19088c7
引用返信 編集キー/
■75898 / inTopicNo.3)  Re[2]: WebBrowserのHTMLエディタでの漢字変換中Ev
□投稿者/ サーカス (2回)-(2015/05/15(Fri) 13:02:19)
2015/05/15(Fri) 13:02:40 編集(投稿者)

No75890 (魔界の仮面弁士 さん) に返信
> ■No75889 (サーカス さん) に返信
>>変換確定中であるかどうかを判定したいのですが、
>>これを調べる方法ってありますか?
>
> ざっくり検索してみたところ、このような情報が見つかりました。
> IE の動作についても書かれているようですが、参考になるでしょうか?
> http://qiita.com/hnakamur/items/9a9ca2663285e19088c7

魔界の仮面弁士 さん、アドバイスありがとうございました。
WebBrowserにはKeyUpイベントに該当するものが見つからないため、
最初のテンプレートHTML読込時にHtmlElementに対してKeyUpイベントを設定し、これを確認しました。
また、KeyDownイベントも同様に確認しました。

Dim body As HtmlElement = WebBrowser1.Document.Body
AddHandler body.KeyDown, AddressOf body_KeyDown
AddHandler body.KeyUp, AddressOf body_KeyUp

この結果を見ると、ご紹介頂いたサイトの説明の通り、
確かに、変換確定前の場合、KeyDownイベントでe.KeyPressedCodeが229を返していることが分かりました。
また、KeyUpイベントでe.KeyPressedCodeが13を返している時(Enter押)は確かに変換が確定していることが分かりました。

これを元に、参考サイトと同様、
・KeyDownイベントでe.KeyPressedCodeが229の時はフラグを確定前・それ以外は確定済にする
・KeyUpイベントでe.KeyPressedCodeが13の時はフラグを確定済にする

という判断ができそうです。

これで出来そうです。ありがとうございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -