トップページ > 過去ログ > 記事閲覧
KeyInputStringで
名前:ZAP 日時: 2008/01/01 01:43

いつもお世話になります。 KeyInputStringで日本語入力をさせたいのですが、 当方の環境ではFEPが無効になったままで、 「半角/全角」キーを押して切り替えようとしても英数字しか入力できません。 ログを見ると、初期化の際に "IMEを無効にしました"というメッセージが出るので 何らかの形でこれを有効にしてあげないといけないのでしょうか? ちなみに環境は ライブラリ Ver2.24(BCC) OS Win2000 SP4 FEP ATOK15(これが怪しい?) です。

Page: 1 |

Re: KeyInputStringで ( No.1 )
名前:ZAP 日時:2008/01/01 13:56

その後調べたところ、日本語入力をIMEにすれば問題なく動作しました。 検証に使ったのはKeyInputStringのサンプルコードです。 ATOKでの日本語入力はダメっぽいですね(^^;
Re: KeyInputStringで ( No.2 )
名前:管理人 日時:2008/01/05 16:15

ご報告ありがとうございます。 早速 ATOK2007体験版をインストールして検証した後、半角/全角キーも反応するように修正してみました。 もし宜しければ ZAPさんの環境でも正常に反応するかお試しになってみて下さい。m(_ _)m http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe //VC用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe //BCC用 (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』、VCをお使いの場合は『リビルド』をして下さい) 今回のバージョンからプロジェクトで使用するランタイムライブラリを   デバッグビルド時は マルチスレッド デバッグ(/MTd) を   リリースビルド時は マルチスレッド(/MT) を 使用するように設定する必要がありますので、お手数ですがご変更の程お願い致します。
Re: KeyInputStringで ( No.3 )
名前:ZAP 日時:2008/01/05 22:19

管理人さま BCC版の修正プログラムでATOKの日本語入力を試したところ、 正常に日本語入力ができました。 早速の対応ありがとうございました。 (VC用は未確認ですので、有志の確認があれば幸いです。)
Re: KeyInputStringで ( No.4 )
名前:ZAP 日時:2008/01/05 22:58

管理人さま 日本語入力は出来るようになったのですが、ちょっとこまった現象が発生しました。 現在作成しているゲームでは、日本語入力以外の、コマンド決定などの操作もキーボードで行うようにしているのですが、 KeyInputStringでの日本語入力用に手動でATOKを有効にした場合、 入力を終えてもATOKが日本語入力モードのままのため、 そのままゲームを進め、再度日本語入力が必要な箇所に至ると、 ゲーム中の操作で押されたzキーやxキーが日本語入力用のバッファに溜まり、 KeyInputStringで入力用に表示される枠に「っっっっっっっっっっz」などと表示されてしまいます。 KeyInputStringの入力処理が終了したらプログラム側でATOKを無効にすればいいと思って調べてみたのですが、 リファレンスを見た限りではどのような方法を取ってよいのかわかりませんでした。 プレイヤーにATOKの日本語入力を手動でオフにさせるのもスマートではないなあと思いまして。 なにか良いお知恵があれば・・・
Re: KeyInputStringで ( No.5 )
名前:管理人 日時:2008/01/14 13:41

ご報告ありがとうございます。 前回修正の際にテストの為に変更していた部分を元に戻すのを忘れていました。orz 修正したバージョンをアップしましたので、申し訳ありませんがもう一度 ダウンロードをして下さい。m(_ _;m http://homepage2.nifty.com/natupaji/DxLib/DxLibVCTest.exe //VC用 http://homepage2.nifty.com/natupaji/DxLib/DxLibBCCTest.exe //BCC用 (中身を既存のライブラリのファイルに上書きして、BCCをお使いの 場合は『再構築』、VCをお使いの場合は『リビルド』をして下さい) なお、VC版は今回のバージョンからプロジェクトで使用するランタイムライブラリを   デバッグビルド時は マルチスレッド デバッグ(/MTd) を   リリースビルド時は マルチスレッド(/MT) を 使用するように設定する必要がありますので、お手数ですがご変更の程お願い致します。
Re: KeyInputStringで ( No.6 )
名前:ZAP 日時:2008/01/14 20:59

管理人さま 対応ありがとうございます。 修正版で、KeyInputStringの処理が終わったらFEPがオフになることを確認しました(BCC版)。 しかし、他の不具合が発生してしまったようなので、別スレッドでご報告します。

Page: 1 |