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

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

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

Re[3]: Windows8でIMEモード=半角カタカナが効かない


(過去ログ 108 を表示中)

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

■64131 / inTopicNo.1)  Windows8でIMEモード=半角カタカナが効かない
  
□投稿者/ Uni (1回)-(2012/11/08(Thu) 15:02:28)

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

初めて質問させていただきます。

VisualBasic.Net2010で作成したプログラムをWindows8で実行したのですが、テキストボックスのIMEが半角カタカナのときに全角かなになってしまい、半角カタカナになりません。(変換して入力する事は可能ですが,初期のIMEModeが全角かなになってしまいます)

開発環境:WindowsXPとWindows7/.NetFramework4.0.30319/VisualStaudio2010 Ver.10.0.30319

解消する情報をお持ちの方がいらっしゃいましたら、よろしくお願いします。
引用返信 編集キー/
■64134 / inTopicNo.2)  Re[1]: Windows8でIMEモード=半角カタカナが効かない
□投稿者/ 魔界の仮面弁士 (85回)-(2012/11/08(Thu) 16:18:00)
No64131 (Uni さん) に返信
> Windows8で実行したのですが、テキストボックスのIMEが半角カタカナのときに全角かなになってしまい、


.NET 4 の ImeMode の解説には書かれていませんでしたが、.NET 4.5 のものには、
》 ImeMode のプロパティは、Windows 8 でグローバルな入力モードが有効な場合には無視されます。
》 詳細については、( http://j.mp/PYLhUk ) を参照してください。
との記載がありました。
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.control.imemode.aspx

# 上記にある "the global input mode" というのは、何のことだろう…?


> 解消する情報をお持ちの方がいらっしゃいましたら、よろしくお願いします。

情報は持ち合わせていないので、上記をざっくり読んでみました。
英文の斜め読みなので、誤読があるかも知れませんが:


・従来は、IME の切り替えはスレッド単位で行われていたが、
 Windows 8 では、ユーザー単位で切り替わることになった。

・そのため、ImmSetConversionStatus / ActivateKeyboardLayout API が影響を受ける。

・ただし 日本語のMicrosoft IMEにおいては、変換モード(ひらがな、半角英数字、
 全角カタカナ、半角カタカナ、全角英数字)が特定の入力フィールドに
 ひもづいているため、変換モードがアプリごとに保持される。

・日本語の Microsoft IME は、アプリを切り替えた後、ひらがなモードとなる。

・日本語の Microsoft IME は、ユーザー別モードで ImmSetConversionStatus API が
 呼び出された際に、変換モードの切り替えを無視する。この API は、.NET Fremework の
 ImeMode プロパティで利用されている。

・Windows 8 のユーザー別モードにおいては、IMEモードを切り替えるために、
 InputScope クラスが推奨される。



…結局どうすれば良いのかは分かりません。
InputScope って、WinForm 用のクラスでは無さそうですし。



> VisualBasic.Net2010で
正確には、Visual Basic 2010 ですね。

2010 も VB.NET であるのですが、2005 以降は
製品名に“.NET”の名を冠さないようになっています。
引用返信 編集キー/
■64142 / inTopicNo.3)  Re[1]: Windows8でIMEモード=半角カタカナが効かない
□投稿者/ shu (89回)-(2012/11/08(Thu) 22:56:21)
No64131 (Uni さん) に返信

http://wintips.blog117.fc2.com/blog-entry-92.html
によると
コンパネの設定で変更ができるようです。
こんな解決方法で良いでしょうか?
引用返信 編集キー/
■64146 / inTopicNo.4)  Re[2]: Windows8でIMEモード=半角カタカナが効かない
□投稿者/ Uni (2回)-(2012/11/09(Fri) 10:54:09)
2012/11/09(Fri) 11:05:31 編集(投稿者)

No64142 (shu さん) に返信

 コンパネの設定を変えたところ、解消しました!ありがとうございます。
 ただ、なぜ半角カタカナだけ有効にならないのか納得いかないところですが…。
 とりあえず、この方法で回避して行こうと思いますが、半角カタカナはなるべく使わない方向にしたほうが良さそうですね。
 
 ありがとうございました。

解決済み
引用返信 編集キー/
■64147 / inTopicNo.5)  Re[2]: Windows8でIMEモード=半角カタカナが効かない
□投稿者/ Uni (3回)-(2012/11/09(Fri) 11:04:34)
2012/11/09(Fri) 11:05:57 編集(投稿者)

No64134 (魔界の仮面弁士 さん) に返信

 情報ありがとうございました。

 Micorosoftから、修正のSPなどは出ないのでしょうかね?
 コントロールパネルの設定で回避できそうですが、標準のコントロールを使っているのにおかしくなると困ってしまいます。それに、コントロールパネルの設定だと他のシステムに影響を及ぼさないかも心配ですし。
 できれば、従来どおりの動きになってくれればよいのですが。

 ありがとうございました。
解決済み
引用返信 編集キー/
■64154 / inTopicNo.6)  Re[3]: Windows8でIMEモード=半角カタカナが効かない
□投稿者/ howling (65回)-(2012/11/09(Fri) 12:29:55)
Uniさん

蛇足ですが、半角カタカナは元よりかなり変な位置にいます。
文字コード表を照らし合わせてみると、わかりやすいかと。
なんでお前こんな場所にいるんだって位置にありますので。

…こういうのがあるから文字コード変換が大変なのですが…(苦笑
解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -